javascript - 使用 jquery 循环遍历 div 中的所有标签元素

标签 javascript jquery html

如何使用 jQuery 或 JavaScript DOM 循环遍历 div 中的所有标签元素

这是示例 html:

<div id="pagination">
    <label class="noLink">First</label>
    <label class="noLink">Previous</label>
    <label class="withLink" onClick="paginateTo('next')">Next</label>
    <label class="withLink" onClick="paginateTo('last')">Last</label>
</div>

我在这里尝试做的是删除 onClick 事件并将值为 withLink 的类更改为 noLink。我正在尝试使用 JavaScript DOM 和 jQuery 循环所有标签,但仍然没有成功。我知道有一个类似的问题,但找不到适合我需要的问题。请在这件事上给予我帮助。谢谢!

最佳答案

对于 jQuery 来说非常简单。看起来像:

$('#pagination .withLink').toggleClass('withLink noLink').removeAttr('onclick');

引用:.toggleClass() , removeAttr()


用普通的 Javascript 来说有点琐碎:

var lnks = document.getElementById('pagination').querySelectorAll('.withLink');
for(var i = 0, len = lnks.length; i < len; i++) {
    lnks[i].removeAttribute('onClick');
    lnks[i].className = lnks[i].className.split(/\s/).filter(function(elem) {
        return elem !== 'withLink';
    }).join(' ');
}

引用:.querySelectorAll() , .filter()

请注意,普通 Javascript 仍然有浏览器限制。它需要 Javascript 1.6,因此您需要 IE8+。

关于javascript - 使用 jquery 循环遍历 div 中的所有标签元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5125950/

相关文章:

javascript - 有没有更好的方法将两个值中的最大值分配给一个属性?

javascript - p5.j​​s:当 div 改变高度时调整 Canvas 高度

javascript - AngularJs。 ngInclude 在 jQuery 弹出窗口中

javascript - AJAX 调用未完成时停止 JS 函数执行

javascript - 滚动以隐藏 Javascript 模式

php - 如何检查用户 CakePHP 的组 ID

javascript - 选择不同选项时会重置的条件下拉菜单

javascript - 为什么这些对象属性未定义?

html - 文本缩进 : -9999em not working for span element in IE9

css - 在 Container 中定位子元素