永发信息网

JS值冲突 急!!!

答案:1  悬赏:40  手机版
解决时间 2021-04-22 23:44

<html xmlns=" http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>Select Demo</title>
<style type="text/css">
<!--
#macstyle .select_box{width:116px;height:24px;}
#macstyle div.tag_select{display:block;color:#ff0000;width:116px;height:32px;background:transparent url("select_bg.gif") no-repeat 0 -35px;padding:6px 0 0 15px;line-height:24px;}
#macstyle div.tag_select_hover{display:block;color:#ff0000;width:116px;height:32px;background:transparent url("select_bg.gif") no-repeat 0 0;padding:6px 0 0 15px;line-height:24px;}
#macstyle div.tag_select_open{display:block;color:#ff0000;width:116px;height:32px;background:transparent url("select_bg.gif") no-repeat 0 -35px;padding:6px 0 0 15px;line-height:24px;}
#macstyle ul.tag_options{position:absolute;margin:-4px 0 0;list-style:none;background:transparent url("select_bg.gif") no-repeat left bottom;padding:0 0 3px 0;margin:0;width:106px;}
#macstyle ul.tag_options li{background:transparent url("select_bg.gif") repeat-y -115px 0;display:block;width:106px;padding:0 0 0 15px;height:24px;text-decoration:none;line-height:24px;color:#000;}
#macstyle ul.tag_options li.open_hover{background:transparent url("select_bg.gif") no-repeat -221px 0;color:#000}
#macstyle ul.tag_options li.open_selected{background:transparent url("select_bg.gif") no-repeat -221px -24px;color:#fff}
-->
</style>
<LINK href="../tycdIE6.css" type=text/css rel=stylesheet>
<!--[if gte IE 7]>
<!-- 如果IE浏览器版本大于或等于7 -->
<link rel="stylesheet" type="text/css" href="../tycd.css" />
<![endif]-->
<script type="text/javascript" src="select2css.js"></script>
</head>
<body>
<form id="form" name="form" method="get" action="">

<h3 >Mac Style</h3>
<div id="macstyle">
<select name="language_mac" id="language_mac">
<option value="简体中文">简体中文</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
</div>
</form>
</body>
</html>


JS部分:

var selects = document.getElementsByTagName('select');

var isIE = (document.all && window.ActiveXObject && !window.opera) ? true : false;

function $(id) {
return document.getElementById(id);
}

function stopBubbling (ev) {
ev.stopPropagation();
}

function rSelects() {
for (i=0;i<selects.length;i++){
selects[i].style.display = 'none';
select_tag = document.createElement('div');
select_tag.id = 'select_' + selects[i].name;
select_tag.className = 'select_box';
selects[i].parentNode.insertBefore(select_tag,selects[i]);

select_info = document.createElement('div');
select_info.id = 'select_info_' + selects[i].name;
select_info.className='tag_select';
select_info.style.cursor='pointer';
select_tag.appendChild(select_info);

select_ul = document.createElement('ul');
select_ul.id = 'options_' + selects[i].name;
select_ul.className = 'tag_options';
select_ul.style.position='absolute';
select_ul.style.display='none';
select_ul.style.zIndex='999';
select_tag.appendChild(select_ul);

rOptions(i,selects[i].name);

mouseSelects(selects[i].name);

if (isIE){
selects[i].onclick = new Function("clickLabels3('"+selects[i].name+"');window.event.cancelBubble = true;");
}
else if(!isIE){
selects[i].onclick = new Function("clickLabels3('"+selects[i].name+"')");
selects[i].addEventListener("click", stopBubbling, false);
}
}
}


function rOptions(i, name) {
var options = selects[i].getElementsByTagName('option');
var options_ul = 'options_' + name;
for (n=0;n<selects[i].options.length;n++){
option_li = document.createElement('li');
option_li.style.cursor='pointer';
option_li.className='open';
$(options_ul).appendChild(option_li);

option_text = document.createTextNode(selects[i].options[n].text);
option_li.appendChild(option_text);

option_selected = selects[i].options[n].selected;

if(option_selected){
option_li.className='open_selected';
option_li.id='selected_' + name;
$('select_info_' + name).appendChild(document.createTextNode(option_li.innerHTML));
}

option_li.onmouseover = function(){ this.className='open_hover';}
option_li.onmouseout = function(){
if(this.id=='selected_' + name){
this.className='open_selected';
}
else {
this.className='open';
}
}

option_li.onclick = new Function("clickOptions("+i+","+n+",'"+selects[i].name+"')");
}
}

function mouseSelects(name){
var sincn = 'select_info_' + name;

$(sincn).onmouseover = function(){ if(this.className=='tag_select') this.className='tag_select_hover'; }
$(sincn).onmouseout = function(){ if(this.className=='tag_select_hover') this.className='tag_select'; }

if (isIE){
$(sincn).onclick = new Function("clickSelects('"+name+"');window.event.cancelBubble = true;");
}
else if(!isIE){
$(sincn).onclick = new Function("clickSelects('"+name+"');");
$('select_info_' +name).addEventListener("click", stopBubbling, false);
}

}

function clickSelects(name){
var sincn = 'select_info_' + name;
var sinul = 'options_' + name;

for (i=0;i<selects.length;i++){
if(selects[i].name == name){
if( $(sincn).className =='tag_select_hover'){
$(sincn).className ='tag_select_open';
$(sinul).style.display = '';
}
else if( $(sincn).className =='tag_select_open'){
$(sincn).className = 'tag_select_hover';
$(sinul).style.display = 'none';
}
}
else{
$('select_info_' + selects[i].name).className = 'tag_select';
$('options_' + selects[i].name).style.display = 'none';
}
}

}

function clickOptions(i, n, name){
var li = $('options_' + name).getElementsByTagName('li');

$('selected_' + name).className='open';
$('selected_' + name).id='';
li[n].id='selected_' + name;
li[n].className='open_hover';
$('select_' + name).removeChild($('select_info_' + name));

select_info = document.createElement('div');
select_info.id = 'select_info_' + name;
select_info.className='tag_select';
select_info.style.cursor='pointer';
$('options_' + name).parentNode.insertBefore(select_info,$('options_' + name));

mouseSelects(name);

$('select_info_' + name).appendChild(document.createTextNode(li[n].innerHTML));
$( 'options_' + name ).style.display = 'none' ;
$( 'select_info_' + name ).className = 'tag_select';
selects[i].options[n].selected = 'selected';

}

window.onload = function(e) {
bodyclick = document.getElementsByTagName('body').item(0);
rSelects();
bodyclick.onclick = function(){
for (i=0;i<selects.length;i++){
$('select_info_' + selects[i].name).className = 'tag_select';
$('options_' + selects[i].name).style.display = 'none';
}
}
}

最佳答案
你查下 同一个页是不是有相同的下拉框名称 可能是重复问题吧
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
九九重阳节的解说?
综合脚手架如何计算,综合脚手架的工程量如何
传奇世界要怎么样才不给人杀?
我怎么用召唤师的时候光掉线啊
怎么制作DIYGHOST系统启动盘?
一生中你最爱的人对你说的最多的一句话是什么
鸡和狗相害是什么意思,五行相克指的是什么?
秦皇岛的质量检测单位有哪些,机构性质及工作
扶风县城关镇西关社区居委会我想知道这个在什
在哪能看到神话andy完整版的音乐剧阿?
完美国际里的英文字母各指什么,如wx是武侠
人一天正常要睡几个小时呢?
谁能送我QQ爱墙的种子啊!!
求拳王97下载网站
html. DIv位子问题
推荐资讯
如果有法律疑问找检察院还是法院?
手机蓝牙打开有什么用,手机蓝牙到底怎么用?
物理—分析人起跳的原因
怎样才能使文章生动形象?
奔波在路上的人语录,凯鲁亚克的永远年轻永远
李家坡路在哪里啊,我有事要去这个地方
请问镍氢电池属于燃料电池么?
联想Y450A-PSE(H)
我是高中生英语偏课估计考不上大学了我是继续
Breaking个人表演时应注意哪些
人活着是面子重要还是生命重要呢?
剑网3奴役状态怎么消除
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?