我需要更改正在加载的元素的位置ajax
。我想用.css()
它来改变它,但 jQuery 找不到该元素,因为它没有被识别。如何让 jQuery “识别”元素?
我已经阅读过live()
,delegate()
但我无法让他们中的任何一个按照我的意愿工作。我真的很感激一些帮助!
在 ajax 调用的complete
or函数中进行 css 更改。success
假设您正在使用load
:
$('#el').load(
url,
data,
function(){
$('#selector').css('position', 'absolute');
}
);
或者(更容易举个例子)注册一个ajaxComplete
事件
$(document).ajaxComplete(function(){
if($('#elementID').length != 0) {
$('#elementID').css('position', 'absolute');
}
});
每次 ajax 请求完成时都会触发它,检查 #elementID 是否存在,如果存在则应用 css。
如果您必须在 js 变量中进行标记,则可以按如下方式进行。
$(markup).find("requiredElement").css({ set the properties here });
如果你想编辑它的 CSS,你需要先将它放在 DOM 中,然后再对其进行操作。
例子:
$.ajax({
...
success:function(data){
$('<div/>').appendTo('body').html(data).css('border','3px solid red');
}
});