jsfl 使用时,出现:JavaScript 错误;
但看了很久,代码没啥问题;(这就是jsfl最难调试的地方,报错了,找问题,找1万年,有没有?有没有!!)
只是对flash 中的一些元件,库项,场景元素,等实例对象的属性打印而已;
经过蛋疼几波,终于发现:就是这些实例对象的某些属性你可以遍历出来;
但就是obj.pro时,就会报错;
具体原因,我也不太了解;
// 显示对象的属性 function listProsOneDepth(obj) { // 这里一旦遍历到:"brightness", "tintColor", "tintPercent", "actionScript"属性就会报错 for(var key in obj) fl.trace(key + " ==> " + obj[key]); }
就算是写上硬编码:obj.brightness, obj.tintColor, obj.tintPercent, obj.actionScript,都会直接报错;
“我呐个去,既然不给访问,你让我遍历出来是作毛线用的?”
然后实在没办法了,就只能这样处理了,这样,妈妈再不用担心我在遍历属性时报“JavaScript 错误”了;
// 显示对象的属性 function listProsOneDepth(obj) { var ignore = ["brightness", "tintColor", "tintPercent", "actionScript"]; for(var key in obj){ if(ignore.indexOf(key) != -1) continue; fl.trace(key + " ==> " + obj[key]); } }
然后,想了一下,看看有没有其它人也会遇到这jsfl的bug问题;
在google搜索了一下,果真还有,他还说了,“如果你也找到了这个bug,请大家留言一下,谢谢!”(其实他是想说,他写的这个软件,如果你有发现bug请留言,哈哈哈哈)
"If you find a bug, please let us know in the comments below. Thanks!"
但总得来说,你看看他写的代码,与避开了,这四个属性,作为:clean prop(清理的属性来处理)
瞅,这是他写的段码,段之一:
for( var prop in curObj) {//each prop //fl.trace("Prop: " + prop); if(prop == "brightness" || prop == "tintColor" || prop == "tintPercent" || prop == "actionScript") {//clean returnString += ("<prop propName=\"" + prop + "\" value=\"" + ("null") + "\"/>"); }//clean else {//normal prop returnString += ("<prop propName=\"" + prop + "\" value=\"" + (curObj[prop]) + "\"/>"); }//normal prop }//each prop
google搜索内容为:jsfl brightness tintColor tinPercent actionScript bug
这位国外文章写在这:http://labs.byhook.com/2009/12/06/hook-picklist-flash-extension-panel/