Zend框架添加了dojo.parser.parse();如果你在页面上有小部件,那么你的脚本就是你的脚本,但如果你没有,那就没有了 - 这是有道理的。但是我有一个共同的js文件应该在所有页面中设置灯箱图像,为此我需要dojo.parser.parse();被包括。我可以将它添加到我的常见js文件中,但如果我这样做,解析器会运行两次并且dojo会中断,因为页面中的所有小部件都会被添加两次。
如何设置我的js以有效地查找未解析的项目,甚至更好的方法是检测dojo.parser.parse();已经运行了?(不幸的是,Zend没有将dojo.parser.parse();分配给变量)
答案 0 :(得分:1)
一旦dojo.parser.parse()
完成了小部件的解析,就可以在全局对象dijit.registry._hash
中找到所有小部件引用。您可以使用简单的测试来检查此对象是否为空,以确定是否已调用dojo.parser.parse()
。
此方法仅在您以声明方式创建窗口小部件时才有效。