0

我使用 jquery 的绑定方法有什么问题?

在职的

var Element = htmlBody.find('tag');
$(Element ).bind('DOMSubtreeModified', function(event) {
    console.log(Element[0]);
    //code come here
});

不工作

var obj = {};
var tags = ['tag1', 'tag2'];
for (index in tags) {
    obj[index] = htmlBody.find(tags[index]);
    $(obj[index]).bind('DOMSubtreeModified', function(event) {
        console.log(obj[index][0]);
        //  code doe not come here
    });  
}
4

2 回答 2

1

尝试以下操作:

var obj = {};
var tags = ['tag1', 'tag2'];
$.each(tags, function(idx, item) {
    obj[idx] = htmlBody.find(tags[idx]);
    $(obj[index]).bind('DOMSubtreeModified', function(event) {
        console.log(item);
    });  
});
于 2013-10-17T09:59:40.910 回答
1

建议使用该on功能而不是bind(). 您还需要使用循环遍历元素for

var obj = {};
var tags = ['tag1', 'tag2'];
for (var i = 0; i < tags.length;i++) {
    obj[i] = htmlBody.find(tags[i]); //not exactly sure what htmlBody.find does
    var item = obj[i][0];
    $(obj[i]).('DOMSubtreeModified', function(event) {
        console.log(item);
    });  
}
于 2013-10-17T10:04:35.943 回答