我在dojo 1.7.2并尝试第一次使用拖放。
在dojo / dnd / Source.js中,在函数_legalMouseDown
中,有这一行:
// accept only the left mouse button
if(!dojo.mouseButtons.isLeft(e)){ return false; }
可笑的是,即使我按下鼠标左键,.isLeft
也会返回false。
这完全打破了拖放功能。
我已经用if(!e.button==0){return false;}
替换了本地代码,这似乎正在发挥作用。
dojo中似乎有多个.isLeft
实现,其中一些正在执行==0
而其他正在执行&1
。
问题:我发现了一个错误,或者我做了些什么傻事?
如果有帮助,我已经在Chrome(版本20.0.1132.47)和Firefox(版本13.0.1)中进行了测试。
答案 0 :(得分:3)
您的网页是否使用怪癖模式?这是quirks模式的已知问题。
http://trac.dojotoolkit.org/ticket/15404
您的解决方案可能已破坏其他浏览器(IE),因此请确保测试应用程序支持的浏览器。