CSS元素样式设置正确onMouseDown,为什么不希望重置onMouseUp
CSS element style set properly onMouseDown, why undesired reset onMouseUp?
我有一些标题text/javascript:
function Show() {
document.getElementById("Popup").style["display"] = "block";
}
function Hide() {
document.getElementById("Popup").style["display"] = "none";
}
正文I do:
<a href="" onMouseDown="Show()" onMouseUp=""><img src="blah.jpg"/></a>
...
<a href="" onClick="Hide()">X</a>
我的CSS有:
#Popup {
display:none;
background-color:#EEEEEE;
background: rgba(255, 255, 255, 1.0);
filter:alpha(opacity=80);
font-family: Arial, Helvetica, sans-serif;
font-size: 160%;
...
}
当我点击blah.jpg时,弹出框按预期出现…但只要我鼠标向上,弹出窗口就消失了。我希望它一直存在,直到"X"(在第二个锚标记中)被单击。在第一个锚标记我尝试onMouseUp=",但不高兴。在Chrome和Firefox中也是如此。
该怎么办?
Thanks in advance
您需要将链接的href
属性设置为"#"。一个空的href属性将重新加载当前页面,这就是您所看到的。这并不是说弹出窗口消失了,而是当你鼠标向上移动时,页面会刷新!
。
<a href="#" onMouseDown="Show()" onMouseUp=""><img src="blah.jpg"/></a>
...
<a href="#" onClick="Hide()">X</a>
或者,您可以在onmousedown
事件上设置"return false;"。它通过告诉链接
- 防止默认行为,和
- 不会将事件弹出到父元素(在链接上单击也会在链接的父元素上执行单击,等等)。
。
<a href="" onclick="Show(); return false;"><img src="blah.jpg"/></a>
...
<a href="" onClick="Hide()">X</a>
相关文章:
- 为什么不't Javascript对我的输入值进行了一些重新检查
- 为什么不是't窗口.恢复正常工作吗?(javascript/jquery)
- 为什么不'在JQuery中找到第二个css选择器的工作
- 为什么不是't运行此Javascript的Chrome
- 为什么不显示警报窗口
- 为什么不推荐使用“with”?是否有更好或其他方法可以“下降”到对象的命名空间
- 为什么不'我们在javascript中使用函数参数的数据类型
- 为什么不't我的变量在我的控制器中填充后在我的视图中呈现
- 为什么不是'这个jQuery汉堡包按钮不工作
- 我希望在不替换现有变量的情况下恢复localStorage中的变量
- 为什么不't Express呈现我的React应用程序
- 为什么不是'我的JS滑块正在工作
- 为什么不是'我的函数在解析云代码中工作吗?当我在Angular和Express中测试时,它是有效的
- 为什么不'当单元测试出现解析错误时,我的因果报应测试会失败
- 在控制器上使用“$watch”时,为什么不更新此隐藏字段
- 为什么不't我的ruby代码与javascript文件一起插入
- 为什么不在浏览器上获得JQuery效果呢
- 为什么不'我的窗口滚动事件根本没有启动.其他答案没有解决问题
- 为什么不't AngularJS希望在值重复的情况下列出数组项
- CSS元素样式设置正确onMouseDown,为什么不希望重置onMouseUp