当前位置:编程学习 > JS >>

javascript 特定区域内搜索标记

我知道全局搜索有getElementsByTagName('tag') 可以在全局范围内搜索标记,现在我只想在特定区域内(比如某div)搜索,有方法吗? 退一步讲,可以搜索该区域内的链接吗? <div onClick="search(this);"> <a href="#"> link a</a> <a href="#"> link b</a> </div> 想遍历div内的链接,也就是标记“a”,把对象搞到一个数组里。 谢谢!
答案:楼上几位回答正确,汇总一下
<div id="aaa" onClick="search(this);">
    <a href="#"> link a</a>
    <a href="#"> link b</a>
    <a href="#"> link c</a>
</div>
<div id="bbb" onClick="search(this);">
    <a href="#"> link a</a>
    <a href="#"> link b</a>
</div>
<SCRIPT>
var aa = aaa.getElementsByTagName("a");
alert(aa.length);
</SCRIPT>
在aaa的div中取到数组再遍历就可以了,不会取到bbb中的a。
其他:用Jquery吧,超级简单。
var obj=$("div>a")
obj就包含了你所要的div下所有a的对象集合. DIV标签的js对象也有getElementsByTagName('tag')方法可调用 遍历DIV里的对像,只要是a的话放到数据里,就可以了。
<script type="text/javascript">
obj=document.getElementById("s");//obj等于你的DIV的ID。
arr=[];j=0;
   for(i=0;i<obj.childNodes.length;i++)
   	if(obj.childNodes.item(i).tagName=="A"){
    	arr[j]=obj.childNodes.item(i);
		j++;
	}
</script> 

上一个:求javascript中的语句
下一个:在javascript 中有数组var a=[23,56,3,1,78,5,7,23,89]用冒泡从小到大排序

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,