禁用网页上的鼠标悬停事件

Disable mouseover events on webpage

本文关键字:鼠标 悬停 事件 网页      更新时间:2023-09-26

我正在使用一个交互式地图web服务,该服务嵌入到一个网页中,用于显示展厅的交互式平面图。web服务使用css和javascript,它们位于供应商的服务器上。我可以修改CSS并在服务器上本地使用它,但不允许修改javascript。当用户在平面图上的展位上鼠标悬停时,展位将高亮显示,并显示一个类似工具提示的广告,提供展位租户的信息。我可以使用参数(例如"www.mypage.com/mymap.htm?hotspot=100")直接转到平面图上突出显示的展位,这将转到交互式平面图页面,突出显示展位100并显示广告。此时,用户可以将鼠标移动到另一个展位,焦点现在转到高亮显示的新展位,等等。我希望这样,一旦用户从链接中的参数进入平面图页面,所有其他鼠标悬停都将被禁用,这样即使用户将鼠标移到另一展位,也不会发生任何事情,焦点仍保持在初始展位上。我不是CSS或javascript专家,但我们非常感谢您对我的帮助。如果我必须创建一个单独的复制平面图页面来处理参数,这样我就可以只为该页面而不是主平面图页面(没有参数)调整CSS,那也没关系。我在iOS应用程序中通过网络视图使用地图,但我似乎找不到本地iOS代码解决方案,所以我希望可以通过CSS完成。

CSS代码如下:

#maTour {
background-color:#ffffff;
height:793px;
position:relative;
width:1200px;
}
#maPopup {
text-align:left;
}
.maPopup,
.maPopupPinned {
}
#maTooltip {
z-index:10000;
visibility:hidden;
position:absolute;
border:solid 1px #808080;
color:#000000;
background-color:#fff8dc;
font-size:8px;
font-family:Arial, Helvetica, sans-serif;
padding:4px;
font-weight:normal;
font-style:normal;
text-decoration:none;
max-width:200px;
}
#maLayout {
text-align:left;
height:793px;
padding-top:0px;
padding-right:0px;
padding-bottom:0px;
padding-left:0px;
width:1200px;
}
#maAbsBlock {
overflow:hidden;
position:absolute;
}
#maHotspotTitle {
background-color:#ddffff;
color:#1f497d;
font-family:Verdana, Arial, Helvetica, sans-serif;
font-size:12px;
font-style:normal;
font-weight:bold;
}
#maTextArea {
background-color:#ddffff;
}
#maHotspotText {
background-color:#ddffff;
color:#000000;
font-family:Verdana, Arial, Helvetica, sans-serif;
font-size:11px;
font-style:normal;
font-weight:normal;
}
#maMap {
background-color:#ffffff;
}
.maInstructions, maInstructionsTitle    {
font-family:Arial;
font-size:12px;
}
.maInstructions {
padding:6px;
border:solid 1px #777;
}
.maInstructionsTitle {
font-weight:bold;
margin-bottom:4px;
}
.maZoomControl  {
z-index:4000;
position:absolute;
top:-4px;
left:-4px;
cursor:pointer;
-webkit-tap-highlight-color:rgba(0,0,0,0);
}

在jQuery中:

 $('*').mouseOver(function(e){
     e.preventDefault();
 });

那就行了。