Dojo 1.6.2出现奇怪的firefox错误

时间:2013-11-13 12:48:59

标签: firefox dojo

我在Dojo中编写了以下代码。除了Firefox之外,它在所有浏览器中都能正常工作(25,26)控制台的错误是:typeError: this.getParent() is null这实际上没什么用处。

onclick事件不会触发上述错误。

问题出在哪里:

  var pMenu = new dijit.Menu({
        targetNodeIds: [ContainerNode]
    });

 var t = new dijit.MenuItem({
        label: "test",
        iconClass: "context_paste",
    });

dojo.connect(t, 'onclick', function(){alert("test")});

1 个答案:

答案 0 :(得分:1)

我创建了一个小提琴,填写了丢失的代码,无法在Firefox 25上重现错误。我做的一些更改是:

  • 删除iconClass
  • 末尾的尾随逗号
  • 将菜单项放在带有placeAt(pMenu)
  • 的菜单中
  • 加载代码。我不确定你是从提供的代码中做到这一点。

http://jsfiddle.net/RichAyotte/okvp0hpu/

dojo.require('dijit.Menu');
dojo.require('dijit.MenuItem');

dojo.addOnLoad(function() {
    var ContainerNode = document.getElementById('container');

    var pMenu = new dijit.Menu({
       targetNodeIds: [ContainerNode]
    });

    var t = new dijit.MenuItem({
        label: "test",
        iconClass: "context_paste"
    }).placeAt(pMenu);

    dojo.connect(t, 'onClick', function(){alert("test")});
});