这是我的HTML标记。
<a href="#" id="test"><img id="imgtest" src="imgs/test_0.png" width="108" height="32" /></a>
这是我的jQuery。
$(document).ready(function () {
$("#test").click(function () {
$('#imgtest').attr('src', 'imgs/test.png');
});
});
我需要在点击锚标记时更改图像。 这适用于桌面上的任何浏览器,但移动Safari。 这有什么问题?
答案 0 :(得分:2)
Mobile Safari 只会在用户点按可点击元素(如链接)时生成鼠标事件。您可以通过向其添加onClick
事件处理程序来使元素可单击,即使该处理程序不执行任何操作。
- 来自here
添加虚拟onclick处理程序以使元素可点击(通常不是):
<img id="imgtest" src="imgs/test_0.png" onclick="void(0)" />
你已经把它作为一个链接,所以这不是问题。
但是,如果有mouseover
事件更改任何内容(例如隐藏/显示内容,例如下拉菜单中),则不会触发点击事件。
- 来自here
您还可以尝试touchstart
或touchend
个事件。
e.g。
$(document).ready(function () {
$("#test").on("click touchend", function () {
$('#imgtest').attr('src', 'imgs/test.png');
});
});