在鼠标悬停时显示“添加到购物车”不适用于类似的 elementId
Displaying 'Add to Cart' on mouse over does not work for similar elementId
我有以下代码用于显示Add to Cart
onmouseover
。如果只有 1 个类似 ID 的项目,它可以完美运行,但在某些情况下,可以在同一页面中多次显示相同的product
,并且Add to Cart
按钮不会显示给当前对象,而是显示给该特定ID
的第一个element
。
## Category A ##
<div onmouseover="document.getElementById('addtocart1').style.display='block'" onmouseout="document.getElementById('addtocart1').style.display='hidde'">
<span style="display:none;" id="addtocart1"></span>
Product A
</div>
## Category B ##
<div onmouseover="document.getElementById('addtocart1').style.display='block'" onmouseout="document.getElementById('addtocart1').style.display='hidde'">
<span style="display:none;" id="addtocart1"></span>
Product A
</div>
如何将display:block
设置为respective
object
用户mouse
谢谢
首先你复制ID是行不通的.但是下面的代码会起作用。Finlay 为什么不使用 Jquery 这很容易
onmouseover="this.children[0].style.display='block'" onmouseout="this.children[0].style.display='none'"
正如在关于该问题的一条评论中所述,元素 ID 必须是唯一的。如果您希望所有对象都有共同点,请尝试为它们提供一个类,然后document.getElementsByClassName
将返回一个数组,其中包含具有该类的所有元素。然后遍历该数组并执行您需要执行的任何操作。您还需要将所有这些放在一个被称为 onmouseover
和 onmouseout
的函数中,因为您将执行多行代码。
或者,如果你要使用类似JQuery的东西,你可以使用CSS选择器来获取类,然后,$('.className').
mouseover
(function)
和$('.className').
mouseout
(function)
,会将该函数应用于具有该类的所有元素。
相关文章:
- HTML5 Canvas toDataURL(“image/png”)适用于一些绘画,而有些则不然,不确定原因
- JavaScript不显示剩余字符,但适用于其他页面
- 我如何完善这个Javascript代码,使其只适用于来自图像的链接(而不是来自文本的链接)
- 为什么这只适用于身体部分而不是头部
- 为什么不't此正则表达式适用于重复出现的对
- document.getElementById 对内部 html 的调用适用于 $_POST 和 $_GET 变量,但不
- JavaScript 位置适用于本地主机而不是服务器
- Rally App SDK 2.0:Rallymultiobjectpicker,适用于不显示displayField的
- jQuery事件在Mozilla上不起作用,并且适用于其他浏览器
- Angular.js - 控制器不为索引执行,适用于其余模板
- D3 .on 更改适用于文本而不是图表
- Zillow 数据 - json_encode不起作用 - 适用于常规变量
- 弹出模式仅适用于表格中的第一个元素,第二次单击后不会再次打开
- Phonegap Android项目适用于模拟器,而不是实际的手机
- ajax jonp 不应该适用于 请求的上不存在“访问控制-允许源”标头
- AngularJS:ng-单击不起作用,适用于<按钮>
- Javascript不会在移动设备上加载.适用于桌面
- 为什么我的代码适用于高度:100px,而不是高度:100%
- 拖放区.js + Laravel-多文件上传不起作用(仅适用于一个文件)
- 哪些限制适用于不透明响应