Rou*_*per 4 ajax jquery asynchronous
do jQuery.fn.empty()和remove()函数是否异步执行?我在jQuery文档中找不到这个问题的答案.
他们都是同步的.您可以查看实际实现的来源:
remove: function( selector, keepData ) {
var elem,
elems = selector ? jQuery.filter( selector, this ) : this,
i = 0;
for ( ; (elem = elems[i]) != null; i++ ) {
if ( !keepData && elem.nodeType === 1 ) {
jQuery.cleanData( getAll( elem ) );
}
if ( elem.parentNode ) {
if ( keepData && jQuery.contains( elem.ownerDocument, elem ) ) {
setGlobalEval( getAll( elem, "script" ) );
}
elem.parentNode.removeChild( elem );
}
}
return this;
},
empty: function() {
var elem,
i = 0;
for ( ; (elem = this[i]) != null; i++ ) {
if ( elem.nodeType === 1 ) {
// Prevent memory leaks
jQuery.cleanData( getAll( elem, false ) );
// Remove any remaining nodes
elem.textContent = "";
}
}
return this;
},
Run Code Online (Sandbox Code Playgroud)
你可以忽略keepData和cleanData的东西,所以你留下了所有的是一个循环,并到本地DOM方法或DOM对象属性修改的呼叫.这些都是同步的.