
各位大哥大姐进来帮我看下这段JS代码?
stuHover=function(){varcssRule;varnewSelector;for(vari=0;i<document.styleSheets.lengt...
stuHover = function() {
var cssRule;
var newSelector;
for (var i = 0; i < document.styleSheets.length; i++)
/*将所有的lI:hover的样式名改为LI.iehover*/
for (var x = 0; x < document.styleSheets[i].rules.length ; x++)
{
cssRule = document.styleSheets[i].rules[x];
if (cssRule.selectorText.indexOf("LI:hover") != -1)
{
newSelector = cssRule.selectorText.replace(/LI:hover/gi, "LI.iehover");
document.styleSheets[i].addRule(newSelector , cssRule.style.cssText);
}
}
/*鼠标经过和移走的样式效果*/
var getElm = document.getElementById("nav").getElementsByTagName("LI");
for (var i=0; i<getElm.length; i++) {
getElm[i].onmouseover=function() {
this.className+=" iehover";
}
getElm[i].onmouseout=function() {
this.className=this.className.replace(new RegExp(" iehover\\b"), "");
}
}
}
/*注入页面运行加载事件*/
if (window.attachEvent) window.attachEvent("onload", stuHover);
这是一个级联菜单的代码,当鼠标经过时将会出现下拉列表菜单。
请问下this.className=this.className.replace(new RegExp(" iehover\\b"), "");这句是什么意思呢?求解释……
这是效果图 展开
var cssRule;
var newSelector;
for (var i = 0; i < document.styleSheets.length; i++)
/*将所有的lI:hover的样式名改为LI.iehover*/
for (var x = 0; x < document.styleSheets[i].rules.length ; x++)
{
cssRule = document.styleSheets[i].rules[x];
if (cssRule.selectorText.indexOf("LI:hover") != -1)
{
newSelector = cssRule.selectorText.replace(/LI:hover/gi, "LI.iehover");
document.styleSheets[i].addRule(newSelector , cssRule.style.cssText);
}
}
/*鼠标经过和移走的样式效果*/
var getElm = document.getElementById("nav").getElementsByTagName("LI");
for (var i=0; i<getElm.length; i++) {
getElm[i].onmouseover=function() {
this.className+=" iehover";
}
getElm[i].onmouseout=function() {
this.className=this.className.replace(new RegExp(" iehover\\b"), "");
}
}
}
/*注入页面运行加载事件*/
if (window.attachEvent) window.attachEvent("onload", stuHover);
这是一个级联菜单的代码,当鼠标经过时将会出现下拉列表菜单。
请问下this.className=this.className.replace(new RegExp(" iehover\\b"), "");这句是什么意思呢?求解释……
这是效果图 展开
1个回答
展开全部
this.className=this.className.replace(new RegExp(" iehover\\b"), "");
将className中iehover\b 替换成空白(用正则表达式)。\\b表示\b,有一个\被转义
将className中iehover\b 替换成空白(用正则表达式)。\\b表示\b,有一个\被转义
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询