所以我使用无限滚动,当我滚动x个像素数量时,会向页面添加新对象.但是如何使用jQuery检查是否在页面中添加了新元素(class或id)?
(我想检查一下,因为如果添加了一个新元素,我想在新元素上做一些jQuery).
只需使用.length,检查它是否存在,在append()之后
$('#elemId').length;
Run Code Online (Sandbox Code Playgroud)
像这样......
if($('#elemId').length > 0){ //your code here };
Run Code Online (Sandbox Code Playgroud)
或者写自己的功能....
jQuery.fn.Exists = function(){
return jQuery(this).length > 0;
};
Run Code Online (Sandbox Code Playgroud)
然后用它来返回真或假......
if($('#elemId').Exists()){ //your code here };
Run Code Online (Sandbox Code Playgroud)
或者你可以使用livequery()插件......
$('#elemID').livequery(function()
{
// do things here like binding new events and stuff.
// this function is called when an object is added.
// check the API for the deletion function and so on.
});
Run Code Online (Sandbox Code Playgroud)
我似乎无法在jQuery网站上找到该插件,但它确实存在于某一点上
你也可以试试DOMNodeInserted ......
$(document).bind('DOMNodeInserted', function(e) {
console.log(e.target, ' was inserted');
});
Run Code Online (Sandbox Code Playgroud)
如果您的选择器始终相同,您可以使用on()....
例如,当你滚动时,你总是添加一个名为class ="newDiv"的新div ....
然后你要执行的jquery ....如果你想绑定一个事件来点击...
$(document).on( 'click', '.newDiv', function(){ //your code here
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1475 次 |
| 最近记录: |