我需要用来自JavaScript的一些事件替换JQuery中的Bind事件。
我正在开发一个Bookmarklet,我收到了用JavaScript替换jQuery的命令
我有以下代码
$(document).unbind("mousemove", X.highlighter);
$(document).bind("mousemove", X.highlighter);
以及
var current, overlay = $("#overlayhighlight"), o = $('#y');
这最后3我可以用document.getElementsByID替换
绑定和取消绑定......没有头绪
答案 0 :(得分:3)
document.onmousemove(function(){
//do something here
});
var current, overlay = doucment.getElementById("overlayhighlight"), o = docuemnt.getElementById('y');
您可以使用上面的javascript代码替换jquery代码
答案 1 :(得分:2)
查看element.addEventListener()
(MDN docu)和element.removeEventListener
(MDN docu)。
document.addEventListener( 'mousemove', X.highlighter );
document.removeEventListener( 'mousemove', X.highlighter );
答案 2 :(得分:2)
if (document.addEventListener) {
document.addEventListener('mousemove', modifyText, false);
} else if (document.attachEvent) {
document.attachEvent('onmousemove', modifyText);
}
答案 3 :(得分:2)
将此添加到脚本的顶部并像往常一样使用jQuery,如果网站没有jquery,则无关紧要。
var js = document.createElement("https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js");
js.type = "text/javascript";
js.src = jsFilePath;
document.body.appendChild(js);
答案 4 :(得分:1)
document.onmousemove=X.highlighter;//bind
document.onmousemove=null;//unbind
答案 5 :(得分:1)
查看我们的this link以获取大量鼠标事件信息,更具体地说是这一点:
MOUSEMOVE
mousemove事件工作正常,但您应该知道它可能 花费相当多的系统时间来处理所有mousemove事件。如果 用户移动鼠标一个像素,mousemove事件触发。即便 没有实际发生,长而复杂的功能需要时间和 这可能会影响网站的可用性:一切都很顺利 慢慢地,特别是在旧电脑上。
因此,最好只在注册时使用onmousemove事件处理程序 你需要它,并在不再需要它时立即删除它:
element.onmousemove = doSomething;
// later
element.onmousemove = null;