我有一个更改img src的脚本,它在除iPad上的Safari之外的每个浏览器上都运行良好。这是:
$("#carousel a").click(function() {
var itemId = $(this).attr("itemid");
$("#collection-photo img").attr("src", "path_"+itemId);
});
这是HTML代码:
<div id="collection-photo">
<img src="path_0" alt=""/>
</div>
<ul id="carousel">
<li><a href="#" itemid="1"><img src="some_img_1" alt=""/></a></li>
<li><a href="#" itemid="2"><img src="some_img_2" alt=""/></a></li>
<li><a href="#" itemid="3"><img src="some_img_3" alt=""/></a></li>
...
</ul>
所有的方案都是正确的,因为它可以在每个浏览器中运行,正如我之前所说的那样。我使用jQuery 1.9.1。
谢谢。
对不起那个问题,伙计们。问题在于糟糕的俄语CMS,我解决了它,谢谢你的帮助。
答案 0 :(得分:1)
尝试这一点 - 阻止链接执行总是一件好事,特别是在涉及图像时。单击#将重新加载某些浏览器,除非我们返回false / preventDefault
$("#carousel a").click(function(e) {
e.preventDefault(); // cancel the click
var itemId = $(this).attr("itemid");
$("#collection-photo img").attr("src", "path_"+itemId);
});
答案 1 :(得分:1)
alert(itemId)
以检查属性是否正确读取并单击实际处理。请改为使用data-
属性。return false
或preventDefault
。