我在JS中构建了一种图片库。在给定的img和p元素上,onmousedown事件调用两个函数:它加载一个新图像和一个新描述(见下文)
但是,与我的想法相反,onmousedow它也是通过右键单击触发的。我不喜欢这个,我喜欢用左键单击鼠标来限制onmousedown事件。
有没有办法做到这一点?
非常感谢你的帮助。
HTML:
<img style="max-width: 100%; cursor:pointer;" src="../../img/picture1.jpg" alt="text" title="click me"
id="showgallery" onmousedown="changeimg(); changedscrpt()" />
enter code here
<p class="myclass" style="text-align: center;" id="imgdescription">Description</p>
答案 0 :(得分:0)
您应该将对changeimg()和changedscrpt()的调用移出到单独的方法,该方法首先评估鼠标是否被按下,类似:
onmousedown="checkAndChange(event, this)";
JavaScript的:
function checkAndChange(e, obj)
{
if (leftMousePressed(e))
{
changeimg();
changedscrpt();
}
}
function leftMousePressed(e)
{
e = e || window.event;
var button = e.which || e.button;
return button == 1;
}
如果按下鼠标右键,JavaScript将不会执行任何操作(不会更改下一张图像)。