2010-11-09 114 views
1

我已经在iframe中使用document.designMode =“on”创建了一个富文本编辑器Web应用程序。 我希望文本的选择可以正常工作,但希望禁用拖放文本。 我尝试这样做:拖放禁用在Safari/Chrome WebKit浏览器中不起作用

evt.dataTransfer.effectAllowed="none"; 
evt.dataTransfer.dropEffect = "none"; 

这工作正常,在Firefox,但它并没有在Safari /铬的WebKit浏览器。 我试图把它放在每一个事件:dragover,dragstart,drag,dragenter等..但无济于事.puting在mousedown或mouseup中的evt.preventDefault()addEventListeners禁用我不想要的文本选择。请帮助...

+0

感谢斯科特漂亮的印刷! – Sukii 2010-11-09 17:04:17

回答

0

好吧,在这里我可以看到与我的相同的问题,上个月我一直在研究这些问题,并且我很幸运地解决了使用试验和错误的问题。我使用的是Asp.net MVC和Safari,如果你明白我的意思,那么Chrome不包括在内容占位符映射到主页面标题的视图上创建的脚本。

在您的场景中,您可能需要检查您的JavaScript是否成功调用函数被调用的时间。例如像您添加库

确保它是在头部,当你尝试调用的函数,例如说:

功能将(){

//警惕证明这个Drag方法真的叫做

alert(“Drag method called”);

}

使用警报将帮助您检查是否成功执行你的函数,虽然警报是烦人的,但如果你明智地使用它,它一定会帮助你在调试。大多数情况下,如果您可以将所有脚本放在标题部分中,但也有所帮助,但某些情况无法避免。

这适用于我在我的Safari/Chrome JavaScript问题。

请投票,如果它帮助你。谢谢!

+0

谢谢我做了所有这些,没有帮助...很高兴你已经在14岁时学会了这一切,但是当你应该在户外玩时尝试编程时有点难过... – Sukii 2010-11-10 04:31:12