我知道这可能很荒谬,您可能会说为什么要尝试发明轮子,但这是我目前作为实验所做的工作,它将对我在未来的项目中有所帮助,目前对我来说完全没有财务利润。
整个概念是:
我在Excel-vba中编写了一段代码,该代码打开了IE的一个实例,使我可以将Java脚本代码附加到网页的内容上并执行它(这是刚起步的Firefox Greasemonkey的替代品)。到目前为止成功。
我的Java脚本代码在页面的右下角添加了一个基本上是窄条的菜单,但是当您输入鼠标时,菜单的externalHTML变为:
<DIV style="FILTER: alpha(opacity=95); WIDTH: 450px; HEIGHT: 250px" id=alwaisible>
<DIV id=dummy onmouseenter=menuButton() onmouseleave=menuButton()>
<DIV id=MenuButton>_</DIV>
<DIV id=MenuTitle>Ikariam Assistant</DIV>
<DIV id=MenuBody>
<DIV id=MenuBar>
<DIV class=MenuChoices onclick=Choice(1)>Location</DIV>
<DIV class=MenuChoices onclick=Choice(2)>innerHtml</DIV>
<DIV class=MenuChoices onclick=Choice(4)>Call App</DIV>
<DIV class=MenuChoices onclick=Choice(5)>Extra 1</DIV>
<DIV class=MenuChoices onclick=Choice(0)>Extra 2</DIV>
<DIV class=MenuChoices onclick=Choice(0)>Extra 3</DIV>
<DIV class=MenuChoices onclick=Choice(0)>Extra 4</DIV>
</DIV>
<DIV style="HEIGHT: 161px" id=MenuRest>Nothing for now!</DIV>
</DIV>
</DIV>
</DIV>
在整个CSS样式中,我遇到的问题是.MenuChoices和.MenuChoices:hover类,如下所示
.MenuChoices{
border: outset 2px #C7B581;
color:#FFFFFF;
background-color: #403924;
margin: 2px 0px 0px 2px;
float : left ;
display : block ;
width : 82px ;
text-align : center ;
z-index : 5001 ;
}
.MenuChoices:hover{
background-color:#456789 !important;
cursor: pointer;
}
现在的问题是,当我浏览不同的站点时,无论何时进入MenuChoices之一,我总是会改变鼠标光标的位置,但是只有在某个特定站点中,背景颜色才会更改,而在其他情况下,只有当我单击a连续选择两次或三次,就好像为:visited伪类设置了背景变化一样!我当前的IE版本是8。
知道可能是什么问题吗?
最佳答案
据我所知,在IE8中,只有某些html标记可与:hover一起使用。像“ a”这样的东西会起作用,而div不会。
有关更多信息,请参见此link