看下面 我写的 script 我想把 代码想要改成 跟上面图一样改 有难度所以问下
第一个是 on 状态 其他3个 按钮是 没有style 效果 我想把 没有style 效果的按钮上 onmouseover 和 onmouseout
但 第一个 已经on状态的 按钮也有 影响
怎样才能 第一个按钮 不影响 onmouseover 和 onmouseout 呢?<style>
div {width:50px; height:24px; font:12px Gulim; float:left; background-color:#f1f1f1; border: solid 1px #ccc; text-align:center; cursor:pointer; margin-left:-1px;}
.on {background-color:#fff; border-bottom: none;}
ul {margin:0; padding:0;}
li {width:196px; height:100px; background-color:#99cc00; list-style:none; display:none;}
li.view {display:block;}
span {clear:both; font:0; height:0; margin:0; padding:0; display:block;}
</style><script>
window.onload = function(){
var btn = document.getElementsByTagName('div');
var box = document.getElementsByTagName('li');
var i=0;
for(i=0;i<btn.length;i++){
btn[i].index = i;
btn[i].onclick = function(){
for(i=0; i<btn.length;i++){
btn[i].className='';
box[i].style.display='none';
} //alert('点击了第'+this.index+'个按钮');
box[this.index].style.display = 'block';
this.className='on';
}
}
}
</script><div class="on">百度</div>
<div>淘宝</div>
<div>腾讯</div>
<div>网易</div>
<span class="return"></span>
<ul>
<li class="view">111</li>
<li>222</li>
<li>333</li>
<li>444</li>
</ul>
第一个是 on 状态 其他3个 按钮是 没有style 效果 我想把 没有style 效果的按钮上 onmouseover 和 onmouseout
但 第一个 已经on状态的 按钮也有 影响
怎样才能 第一个按钮 不影响 onmouseover 和 onmouseout 呢?<style>
div {width:50px; height:24px; font:12px Gulim; float:left; background-color:#f1f1f1; border: solid 1px #ccc; text-align:center; cursor:pointer; margin-left:-1px;}
.on {background-color:#fff; border-bottom: none;}
ul {margin:0; padding:0;}
li {width:196px; height:100px; background-color:#99cc00; list-style:none; display:none;}
li.view {display:block;}
span {clear:both; font:0; height:0; margin:0; padding:0; display:block;}
</style><script>
window.onload = function(){
var btn = document.getElementsByTagName('div');
var box = document.getElementsByTagName('li');
var i=0;
for(i=0;i<btn.length;i++){
btn[i].index = i;
btn[i].onclick = function(){
for(i=0; i<btn.length;i++){
btn[i].className='';
box[i].style.display='none';
} //alert('点击了第'+this.index+'个按钮');
box[this.index].style.display = 'block';
this.className='on';
}
}
}
</script><div class="on">百度</div>
<div>淘宝</div>
<div>腾讯</div>
<div>网易</div>
<span class="return"></span>
<ul>
<li class="view">111</li>
<li>222</li>
<li>333</li>
<li>444</li>
</ul>
window.onload = function(){
var btn = document.getElementsByTagName('div');
var box = document.getElementsByTagName('li');
var i=0;
var isOut = false;
for(i=0;i<btn.length;i++){
btn[i].index = i;
btn[i].onmouseover = function(){
if(isOut){
for(i=0; i<btn.length;i++){
if (i>0)btn[i].className='';
box[0].style.display = 'none'
box[i].style.display='none'; }
box[this.index].style.display = 'block';
this.className='on';
}
}
btn[i].onmouseout = function(){
isOut = true;
for(var j=1; j<btn.length;j++){
box[j].style.display='none';
btn[j].className=''
}
box[0].style.display = 'block';
btn[0].className='on';
} }
}
在原有的js上做了相应的调整,应该能达到LZ的要求
要是 我把淘宝点击的话 on 状态是 淘宝按钮 然后 其他的 按钮又 onmouseover / onmouseout 状态
function cs(div) {
var f = div.parentNode;
for (var i = 0; i < f.childNodes.length; i++) {
if (f.childNodes[i].tagName == "DIV" && f.childNodes[i] == div) {
f.childNodes[i].className = "true";
window.document.getElementById(f.childNodes[i].id + "div").style.display = "block"; } else if (f.childNodes[i].tagName == "DIV") {
f.childNodes[i].className = "false";
window.document.getElementById(f.childNodes[i].id + "div").style.display = "none";
}
}
}
</script>
<title></title>
</head>
<body>
<div id="main">
<div style="float: left; padding: 5px;">
<img src="images/b.jpg" /></div>
<div id="tops">
<div id="a" class="true" onclick="cs(this)">
全部手机</div>
<div id="b" class="fasle" onclick="cs(this)">
GSM手机</div>
<div id="c" class="fasle" onclick="cs(this)">
双模手机</div>
</div>
<div class="head" id="adiv">
全部手机
</div>
<div class="head2" id="bdiv">
GSM手机
</div>
<div class="head2" id="cdiv">
双模手机
</div>
</div>
</body>
div {width:50px; height:24px; font:12px Gulim; float:left; background-color:#f1f1f1; border: solid 1px #ccc; text-align:center; cursor:pointer; margin-left:-1px;}
.on {background-color:#fff; border-bottom: none;}
ul {margin:0; padding:0;}
li {width:196px; height:100px; background-color:#99cc00; list-style:none; display:none;}
li.view {display:block;}
span {clear:both; font:0; height:0; margin:0; padding:0; display:block;}
</style>
<div class="on">百度</div>
<div>淘宝</div>
<div>腾讯</div>
<div>网易</div>
<span class="return"></span>
<ul>
<li class="view">111</li>
<li>222</li>
<li>333</li>
<li>444</li>
</ul>
<script type="text/javascript">
var n=-1;//当前定时器指定的div
var div=document.getElementsByTagName("div");
var ul=document.getElementsByTagName("li");
function on_div(k){
for(var i=0;i<div.length;i++){
if(i!=n){div[i].className=""}
ul[i].style.display="none";
}
div[k].className="on";
ul[k].style.display="block";
}
window.setInterval(function(){
n++;
if(n>=div.length)n=0;
div[n].className="on";
on_div(n);
},3000);
for(var i=0;i<div.length;i++){
div[i].onmouseover=(function(x){return function(){on_div(x)};})(i);
}
</script>
window.onload = function(){
var clickindex = 0;
var btn = document.getElementsByTagName('div');
var box = document.getElementsByTagName('li');
var i=0; for(i=0;i<btn.length;i++){
btn[i].index = i;
btn[i].onclick = function(){
for(i=0; i<btn.length;i++){
btn[i].className='';
box[i].style.display='none';
}
//alert('点击了第'+this.index+'个按钮');
box[this.index].style.display = 'block';
this.className='on';
clickindex = this.index;
}
btn[i].onmouseover = function(){
if(clickindex!=this.index){
this.className='on';
//如果需要同步切换LI
//box[this.index].style.display = 'block';
//box[clickindex].style.display = 'none';
}
}
btn[i].onmouseout = function(){
if(clickindex!=this.index){
this.className='';
//同步隐藏
//box[this.index].style.display = 'none';
//box[clickindex].style.display = 'block';
}
}
}
}
//点击显示对应ul的内容,并添加on样式。鼠标经过只添加on样式
var n=0;
var div=document.getElementsByTagName("div");
var ul=document.getElementsByTagName("li");
for(var i=0;i<div.length;i++){
div[i].onmouseover=(function(x){return function(){
div[x].className="on";
}
})(i);
div[i].onmouseout=(function(x){return function(){
if(x!=n)div[x].className="";
}
})(i);
div[i].onclick=(function(x){return function(){
for(var i=0;i<ul.length;i++){
ul[i].style.display="none";
div[i].className="";
}
ul[x].style.display="block";
div[x].className="on";
n=x;
}
})(i);
}
</script>