Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery-如何初始化通过Ajax调用添加到DOM中的元素_Jquery - Fatal编程技术网

Jquery-如何初始化通过Ajax调用添加到DOM中的元素

Jquery-如何初始化通过Ajax调用添加到DOM中的元素,jquery,Jquery,当内容不是通过ajax添加时,这种方法就起作用了 $('#element a img').css({ 'opacity': '0.5' }); 但是,当通过ajax调用添加元素时,它不起作用。我熟悉live和bind,但它们是用于事件的 在我通过ajax添加元素之后,我需要进行一些初始化,比如在第一个元素上添加一个跨度,以及在新添加的项目上设置不透明度,等等 如何初始化通过ajax添加的元素?即使您通过ajax调用添加了元素,正常的jQuery选择仍然可以工作 尝试使用Chrome、IE或Fi

当内容不是通过ajax添加时,这种方法就起作用了

$('#element a img').css({ 'opacity': '0.5' });
但是,当通过ajax调用添加元素时,它不起作用。我熟悉live和bind,但它们是用于事件的

在我通过ajax添加元素之后,我需要进行一些初始化,比如在第一个元素上添加一个跨度,以及在新添加的项目上设置不透明度,等等


如何初始化通过ajax添加的元素?

即使您通过ajax调用添加了元素,正常的jQuery选择仍然可以工作


尝试使用Chrome、IE或Firefox中的开发人员工具,以确保在ajax调用中插入的元素确实符合预期的结构

即使您通过ajax调用添加了元素,正常的jQuery选择仍然可以工作


尝试使用Chrome、IE或Firefox中的开发人员工具,以确保在ajax调用中插入的元素确实符合预期的结构

当元素实际存在于页面上时,尝试在Ajax complete处理程序中设置css规则:

$.ajax({
    url: 'ajax/test.html',
    success: function(data) {  },
    complete: function() { 
        $('#element a img').css('opacity', '0.5'); 
    }
});

当元素实际存在于页面上时,尝试在Ajax complete处理程序中设置css规则:

$.ajax({
    url: 'ajax/test.html',
    success: function(data) {  },
    complete: function() { 
        $('#element a img').css('opacity', '0.5'); 
    }
});

您指定的初始函数调用适用于“not loaded by AJAX”DOM元素,因为当您调用它时,它只执行与调用该函数时的选择器匹配的指定的DOM元素。您基本上是说,‘对所有元素执行此操作并停止’,它不会监视DOM中是否有与选择器匹配的新元素

作为$.ajax()/.get()/.post回调函数的一部分,您也许可以调用$().css();作用

虽然不推荐使用,但现在可能适合您的需要。$。live();当前被$.on()取代;但是$.delegate();也可以满足您的需要

虽然在语法上可能不是最正确的(现在是凌晨3点!),但我还是快速使用了$.delegate();在


只需单击输入按钮并单击创建的div。您可以看到我只调用委托一次,并且在div appender之外。这很可能适合您的使用。不幸的是,我与.delegate和.on的经验完全为零

您指定的初始函数调用适用于“not loaded by AJAX”DOM元素,因为当您调用它时,它只在DOM元素上执行与调用函数时的选择器匹配的指定操作。您基本上是说,‘对所有元素执行此操作并停止’,它不会监视DOM中是否有与选择器匹配的新元素

作为$.ajax()/.get()/.post回调函数的一部分,您也许可以调用$().css();作用

虽然不推荐使用,但现在可能适合您的需要。$。live();当前被$.on()取代;但是$.delegate();也可以满足您的需要

虽然在语法上可能不是最正确的(现在是凌晨3点!),但我还是快速使用了$.delegate();在


只需单击输入按钮并单击创建的div。您可以看到我只调用委托一次,并且在div appender之外。这很可能适合您的使用。不幸的是,我与.delegate和.on的经验完全为零

就这么做了。抱歉耽搁了。只是学习这个系统是如何工作的,就是这样。抱歉耽搁了。只是学习这个系统是如何工作的。