admin管理员组文章数量:1026989
用 JS 原生方法实现 jQuery 的 append, prepend, before, after
相当于 $(el).before('html' | element)
el.insertAdjacentHTML('beforeBegin', 'html');
el.insertAdjacentElement('beforebegin', element)
相当于 $(el).prepend('html' | element)
el.insertAdjacentHTML('afterBegin', 'html');
el.insertBefore(element, el.firstChild)
相当于 $(el).append('html' | element)
el.insertAdjacentHTML('beforeEnd', 'html');
el.appendChild(element)
相当于 $(el).after('html' | element)
el.insertAdjacentHTML('afterEnd', 'html');
el.insertAdjacentElement('afterend', element)
相当于 $(el).addClass(className)
el.classList.add(className)
相当于 $(el).removeClass(className)
el.classList.remove(className)
相当于 $(el).toggleClass(className)
el.classList.toggle(className)
相当于 $(el).offset()
var rect = el.getBoundingClientRect();{top: rect.top + document.body.scrollTop,left: rect.left + document.body.scrollLeft
}
相当于 $(el).remove()
el.parentNode.removeChild(el)
相当于 $(el).on(eventName, eventHandler)
el.addEventListener(eventName, eventHandler)
相当于 $(el).off(eventName, eventHandler)
el.removeEventListener(eventName, eventHandler)
相当于 $(document).on(eventName, elementSelector, handler)
document.addEventListener(eventName, function(e) {const handler = function(e) {console.log(this)console.log(e)}for (var target = e.target; target && target != this; target = target.parentNode) {if (target.matches(elementSelector)) {handler.call(target, e);break;}}
}, false);
用 JS 原生方法实现 jQuery 的 append, prepend, before, after
相当于 $(el).before('html' | element)
el.insertAdjacentHTML('beforeBegin', 'html');
el.insertAdjacentElement('beforebegin', element)
相当于 $(el).prepend('html' | element)
el.insertAdjacentHTML('afterBegin', 'html');
el.insertBefore(element, el.firstChild)
相当于 $(el).append('html' | element)
el.insertAdjacentHTML('beforeEnd', 'html');
el.appendChild(element)
相当于 $(el).after('html' | element)
el.insertAdjacentHTML('afterEnd', 'html');
el.insertAdjacentElement('afterend', element)
相当于 $(el).addClass(className)
el.classList.add(className)
相当于 $(el).removeClass(className)
el.classList.remove(className)
相当于 $(el).toggleClass(className)
el.classList.toggle(className)
相当于 $(el).offset()
var rect = el.getBoundingClientRect();{top: rect.top + document.body.scrollTop,left: rect.left + document.body.scrollLeft
}
相当于 $(el).remove()
el.parentNode.removeChild(el)
相当于 $(el).on(eventName, eventHandler)
el.addEventListener(eventName, eventHandler)
相当于 $(el).off(eventName, eventHandler)
el.removeEventListener(eventName, eventHandler)
相当于 $(document).on(eventName, elementSelector, handler)
document.addEventListener(eventName, function(e) {const handler = function(e) {console.log(this)console.log(e)}for (var target = e.target; target && target != this; target = target.parentNode) {if (target.matches(elementSelector)) {handler.call(target, e);break;}}
}, false);
本文标签: 用 JS 原生方法实现 jQuery 的 appendprependbeforeafter
版权声明:本文标题:用 JS 原生方法实现 jQuery 的 append, prepend, before, after 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://it.en369.cn/IT/1686568695a11439.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论