怎样取页面元素并排除其中一个特定ID元素?

KennyLong 2006-03-20 01:18:06
页面中有4个div,ID分别为m0,m1,m2,m3,请问我怎样可以做到在点击其它一个div时,自动将另外三个div的className定义成test2???

<div id="m0" class="test1">零</div>
<div id="m1" class="test1">一</div>
<div id="m2" class="test1">二</div>
<div id="m3" class="test1">三</div>
...全文
206 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
KimSoft 2006-03-20
  • 打赏
  • 举报
回复
虽然代码多一点,但比较清晰。
KimSoft 2006-03-20
  • 打赏
  • 举报
回复
<style>
.test1 {
color:#FF0000;
font-size: 12px;
}
.test2 {
color:#0000FF;
font-size: 12px;
}
</style>
<div id="m0" class="test1">零</div>
<div id="m1" class="test1">一</div>
<div id="m2" class="test1">二</div>
<div id="m3" class="test1">三</div>
<SCRIPT LANGUAGE="JavaScript">
<!--
function getElementsByClass(searchClass,node,tag) {
var classElements = new Array();
if ( node == null )
node = document;
if ( tag == null )
tag = '*';
var els = node.getElementsByTagName(tag);
var elsLen = els.length;
var pattern = new RegExp("(^|\s)"+searchClass+"(\s|$)");
for (i = 0, j = 0; i < elsLen; i++) {
if ( pattern.test(els[i].className) ) {
classElements[j] = els[i];
j++;
}
}
return classElements;
}

window.onload = function() {
divs = getElementsByClass("test1", null, "div");
for (var i = 0; i < divs.length; i++){
divs[i].onclick = clickDiv;
}

function clickDiv() {
for (var i = 0; i < divs.length; i++){
divs[i].className = "test2";
}
this.className = "test1"
}
}
//-->
</SCRIPT>
DeluxWorld 2006-03-20
  • 打赏
  • 举报
回复
<div id="m0" class="test1" onclick='change(this.id)'>零</div>
<div id="m1" class="test1" onclick='change(this.id)'>一</div>
<div id="m2" class="test1" onclick='change(this.id)'>二</div>
<div id="m3" class="test1" onclick='change(this.id)'>三</div>
<script>
function change(id){

id += id.substr(1,2);
divObj = document.getElementsByTagName('div');
for(i=0;i<divObj.length;i++){
if( i == parseInt(id)){
continue;
}
divObj[i].className = 'test2';
}
}
</script>
mingxuan3000 2006-03-20
  • 打赏
  • 举报
回复
onClick="func1(this)";

function func1(a){
var b=document.getElementsByTagName("div");

for(var i=0;i<b.length;i++){
if(b[i].id.substr(0,1)== a.id.substr(0,1)){
if(b[i].id != a.id){
b[i].className="test2";
}
}
}

}


KennyLong 2006-03-20
  • 打赏
  • 举报
回复
呵呵,kimsoft,好久没看到你了。谢谢了~~
KennyLong 2006-03-20
  • 打赏
  • 举报
回复
楼上的回答有点莫名其妙,setClass的代码是什么?
wuyg719 2006-03-20
  • 打赏
  • 举报
回复
onClick="setClass(this)";

87,904

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧