我在这个链接上绑定了两个事件处理程序:
<a href='#' id='elm'>Show Alert</a>
Run Code Online (Sandbox Code Playgroud)
JavaScript的:
$(function()
{
$('#elm').click(_f);
$('#elm').mouseover(_m);
});
function _f(){alert('clicked');}
function _m(){alert('mouse over');}
Run Code Online (Sandbox Code Playgroud)
有没有办法得到一个元素绑定的所有事件的列表,在这种情况下元素与id="elm"?
我想将一个Html元素中的所有属性放入一个数组:就像我有一个jQuery对象,其中html如下所示:
<span name="test" message="test2"></span>
Run Code Online (Sandbox Code Playgroud)
现在一种方法是使用这里描述的xml解析器,但后来我需要知道如何获取我的对象的html代码.
另一种方法是使用jquery,但如何?属性的数量和名称是通用的.
谢谢
顺便说一句:我无法使用document.getelementbyid或类似的东西访问该元素.
不幸的是,我需要迭代页面的所有DOM元素,我想知道最有效的技术是什么.我可以自己对这些进行基准测试,如果我有时间可能,但我希望有人已经经历过这个或有一些我没有考虑的选择.
目前我正在使用jQuery并执行此操作:
$('body *').each(function(){
var $this = $(this);
//do stuff
});
Run Code Online (Sandbox Code Playgroud)
虽然它有效,但它似乎会导致客户端出现一些延迟.它也可以用更具体的jQuery上下文进行调整,比如$('body', '*')
我发现本机javascript通常比jQuery更快,我发现了这一点.
var items = document.getElementsByTagName("*");
for (var i = 0; i < items.length; i++) {
//do stuff
}
Run Code Online (Sandbox Code Playgroud)
我假设本机选项更快.想知道是否有其他选择我没有考虑过.也许是一个递归选项,可以并行迭代子节点.