我对 javascript 比较陌生,但是我在过去的几个小时里通过 google 和 stackoverflow 进行了搜索,但我仍然无法让它工作,看起来它应该很简单,但我不确定是什么我正在俯瞰......
我正在尝试创建一个复选框来禁用我的网站的悬停工具提示,方法是在勾选该复选框时将它们全部移开(因为我无法应用visibility:hidden;在用js悬停时),但我似乎看不到使复选框影响多个工具提示。
我正在使用 GetElementById() ,它似乎只使用该 id 的一个元素,但由于某种原因,我无法让 GetElementsByClassName() 或 GetElementsByName() 工作,尽管据我所知来自 w3schools 我应该能够将我的 GetElementById() 替换为后两个,为什么会发生这种情况以及我应该做什么?
这是我的代码:http://jsfiddle.net/wwX3k/1/
function optioninfovisibilitytoggle() {
if (optioninfovisibility.checked) { document.getElementById('optioninfo').style.left='9001%'
} else { document.getElementById('optioninfo').style.left='12%' }
} optioninfovisibilitytoggle();
我需要将所有工具提示移到一边,通过内联 id 或类或名称或其他任何方式,只要它们全部移到一边而不仅仅是顶部的
预先感谢您的帮助
最佳答案
document.getElementsByClassName 将返回一个元素数组,因此要应用您的样式,您必须迭代该数组并设置每个元素:
当执行这样的 DOM 操作时,使用 jQuery 将为您省去很多麻烦 - http://jquery.com/
那么就很简单:
$('.optioninfo').css('left', '9001%')
这样就可以了。
关于javascript - 如何使用 Javascript 更改具有公共(public)标识符的所有元素的 CSS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25099510/