需要明确的是:我不问如何把现有的挂钩到新的DOM元素。我知道活()函数和旧的liveQuery插件。我问别的东西。

我想知道的是如何钩住非常创造新的DOM元素。我问的原因是我创建不具有对第一方脚本控制第三方用户JS脚本。这些第一方脚本(这是混淆),通过添加新的DOM元素定期更新网页。我想添加这些元素之后执行代码。

使用$( '...').bind( '的ajaxSuccess',函数()......),适用于一些补充,但不是所有的人。

没有正确的解决方案

其他提示

如果总是被与使用document.createElement方法添加它们,你可以简单地替换它,做你跟踪在那里。

document.replacedCreateElement = document.createElement;
document.createElement = function(tagName) {
    this.replacedCreateElement(tagName);
    //do your tracking  
}

我不知道为什么你问,如果你知道如何的liveQuery 的liveQuery 将允许你勾到任意的新的DOM元素。这个之外,我知道该怎么做的唯一事情是钩到DOM方法(如使用appendChild等)

将其集成到实际上的jQuery活()函数是不充分的liveQuery实现。 (Resig的认为这是太多的功能,而无需吹代码大小高达太远是一体的)

在现场(),所缺少的是以下类型的功能:

$('*').livequery(function() {
 // do something
});

使用这一点,并且它应该捕捉任何添加。

好,我去与该一对,这似乎为20秒或以内火所期望的DOM更新少:

$( '#someid' ).bind( 'ajaxSuccess', function() { ... } );
$( '#someid' ).ajaxSuccess( function( e, r, s ) { ... } );

我宁愿不具有由视的liveQuery缓慢页加载,和replacedCreateElement溶液捶打CPU中。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top