单击时交换一组元素的 CSS 样式

发布于 2024-09-06 15:20:18 字数 447 浏览 5 评论 0原文

我找到了一个线程,用 JavaScript 更改元素的类,即沿着我想要的路线,但我不知道如何实现它。

我有一个包含 4 个输入按钮和两种 CSS 样式的页面:“Selected”和“notSelected”。一个按钮最初将被硬编码为“选定”。当用户单击另一个按钮时,我想以编程方式迭代所有按钮(每页上的按钮数量将在 2 到 10 之间),将单击的按钮的类设置为“Selected”,并确保所有其他按钮按钮设置为“notSelected”。

我已经掌握了逻辑,但我以前从未使用过 JavaScript 做过任何事情,所以我对如何做到这一点一无所知。如果有人知道已经存在的教程/代码可以做到这一点,请为我指出正确的方向。

非常感谢!

I found a thread, Change an element's class with JavaScript, that is along the lines of what I'm going for, but I don't know how to implement it.

I have a page with 4 input buttons and two CSS styles: "Selected" and "notSelected". One button will be hard coded initially as "Selected". When the user clicks another button, I'd like to programatically iterate through all the buttons (the number of buttons on each page will be between 2 and 10), set the clicked button's class to "Selected", and make sure all the other buttons are set to "notSelected".

I've got the logic down, but I've never done anything with JavaScript before, so I haven't the slightest idea about how to do this. If someone knows of a tutorial/piece of code already out there that does this, please point me in the right direction.

Thanks a ton!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

夏末染殇 2024-09-13 15:20:18

您可以采用简单的方法并使用像 jQuery 这样的框架来为您完成艰苦的工作

You can go the easy way and use a framework like jQuery that does the hard work for you

青瓷清茶倾城歌 2024-09-13 15:20:18

由于您是 JavaScript 新手,这可能有点多,但是您考虑过使用 jquery 吗?看一下toggleClass(): http://api.jquery.com/toggleClass/

As you are new to JavaScript, this might be a bit much, but have you considered using jquery? Take a look at toggleClass(): http://api.jquery.com/toggleClass/

写给空气的情书 2024-09-13 15:20:18

您好,刚刚制作了一个快速脚本,希望对您有所帮助。如果您发现脚本有任何问题,请告诉我。

我使用的是焦点事件和输入框,您可以根据需要更改它。

函数 doSelect( obj ){ var
mylist=document.getElementById("formDiv")
var 输入项=
mylist.getElementsByTagName(“输入”);
for (i=0; i < inputItems.length;
我++){
document.getElementById(inputItems[i].id).className
= "未选择"; document.getElementById(obj.id).className
=“已选择”; }

div 标签内有一个表单标签 id="formDIV"

少量文本类型的输入标签和 onfocus="doSelect(this)"

<正文>

<形式
名称=“测试表格”>
<输入类型=“文本”
名称=“tx1”
id=“文本1”
onfocus="doSelect(this)"/>
<输入类型=“文本”
名称=“tx2”
id=“文本2”
onfocus="doSelect(this)"/>
<输入类型=“文本”
名称=“tx3”
id=“文本3”
onfocus="doSelect(this)"/>
<输入类型=“文本”
名称=“tx4”
id=“文本4”
onfocus="doSelect(this)"/>
<输入类型=“文本”
名称=“tx5”
id=“文本5”
onfocus="doSelect(this)"/>

这应该
帮助。

Hi just made a quick script, Hope that helps you. Let me know if you find any problem with the script.

I am using focus event and input box, you may change it as needed.

function doSelect( obj ){ var
mylist=document.getElementById("formDiv")
var inputItems=
mylist.getElementsByTagName("input");
for (i=0; i < inputItems.length;
i++){
document.getElementById(inputItems[i].id).className
= "Notselected"; } document.getElementById(obj.id).className
= "selected"; }

Have a form tag within the div tag id="formDIV"

Have few input tags of type text and onfocus="doSelect(this)"

<body> <div
id="formDiv"> <form
name="testform">
<input type="text"
name="tx1"
id="text1"
onfocus="doSelect(this)"/>
<input type="text"
name="tx2"
id="text2"
onfocus="doSelect(this)"/>
<input type="text"
name="tx3"
id="text3"
onfocus="doSelect(this)"/>
<input type="text"
name="tx4"
id="text4"
onfocus="doSelect(this)"/>
<input type="text"
name="tx5"
id="text5"
onfocus="doSelect(this)"/>
</form> </div>
</body>

this should
help.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文