<p>asdflasdjfk21312394293</p> 如:有个字符串: 2394293 怎么才能知道 这个字符串是属于p元素的。 <li><a href="http://paper.wenweipo.com/2012/05/16/CH1205160004.htm" >顶顶顶顶</a></li> 或: http://paper.wenweipo.com/ 知道他是属于a元素。 用js要怎么实现这个功能?
调试欢乐多
/*========= 方式 1 ==========*/
function findElement(text){
var el = null;
$("p").each(function(){
if($(this).html().indexOf(text) > 0){
el = $(this); return false;
}
});
return el;// 这个就是 字符串 所在的元素
}<li><a href="http://paper.wenweipo.com/2012/05/16/CH1205160004.htm" >顶顶顶顶</a></li> 或: http://paper.wenweipo.com/ 知道他是属于a元素。 用js要怎么实现这个功能?
/*======= 方式2========*/
function findElement(text){
var el = null;
$("a").each(function(){
if($(this).attr("href").indexOf(text) > 0){
el = $(this); return false;
}
});
return el; // 这个就是 字符串 所在的元素
}
<meta charset=utf-8><script>
var s='<li><a href="http://paper.wenweipo.com/2012/05/16/CH1205160004.htm" >顶顶顶顶</a></li>';
var f='http://paper.wenweipo.com/';
var reg=/<a[^>]*>[\s\S]*?<\/a>/i;
var con=reg.exec(s);
if(con[0].indexOf(f)>-1){
alert('属于a元素');
}else{
alert('不属于a元素');
}
</script>
function foo(str,find,ele){
var reg=new RegExp('<'+ele+'[^>]*>[\\s\\S]*?<\\/'+ele+'>','i');
var con=reg.exec(str);
if(con[0].indexOf(find)>-1){
return true;
}else{
return false;
}
}
var s='<li><a href="http://paper.wenweipo.com/2012/05/16/CH1205160004.htm" >顶顶顶顶</a></li>'; //原字符串
var f='http://paper.wenweipo.com/'; //要找的串
var element='a'; //要检索的元素
if(foo(s,f,element))
alert('属于'+element);
else
alert('不属于'+element);
s 的值 我想从网页中取。值要怎么写? 就是这样
<body>
<div>
<a href="http://paper.wenweipo.com/2012/05/16/CH1205160004.htm" >顶顶顶顶</a>
</div>
</body>
要怎么取得 s 的值。。
<div>
<a href="http://paper.wenweipo.com/2012/05/16/CH1205160004.htm" >顶顶顶顶</a>
</div>
还是<a href="http://paper.wenweipo.com/2012/05/16/CH1205160004.htm" >顶顶顶顶</a>
如:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<a href="http://paper.wenweipo.com/2012/05/16/CH1205160004.htm" >顶顶顶顶</a></div>
</form>
</body>
</html>
当我输入http://paper.wenweipo.com/\d+/\d+/\d+/CH\d+.htm 可以找到 http://paper.wenweipo.com/2012/05/16/CH1205160004.htm
输入个正则然后 根据正则 匹配网页中的字符串。
如:<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<a href="http://paper.wenweipo.com/2012/05/16/CH1205160004.htm" >顶顶顶顶</a> </form>
</body>
</html>
输入http://paper.wenweipo.com/\d+/\d+/\d+/CH\d+.htm可以找的http://paper.wenweipo.com/2012/05/16/CH1205160004.htm
ePattern = eDoc.getElementById("pattern"),
eSearch = eDoc.getElementById("search");
eSearch.onclick = function(){
var pattern = ePattern.value,
reg = new RegExp();
reg.compile(pattern, 'g');
console.dir(reg);
searchText(reg);
}
function searchText(reg){
var elems = Array.prototype.slice.call(content.window.document.body.getElementsByTagName("*"), 0);
childNodes = null;
alert(elems); for(var i = 0, len = elems.length; i < len; i++){
childNodes = elems[i].childNodes;
if(childNodes.length === 1 && childNodes[0].nodeType === 3){
elems[i].innerHTML = childNodes[0].nodeValue.replace(reg, function(arg){
alert(arg) return "<span style='color: red'>" + arg + "</span>";
});
}
}
}
<head>
<meta charset=utf-8>
<title>无标题页</title>
<script>
function foo(){
var r=document.getElementById("re");
document.getElementById("btn").onclick=function(){ var reg=new RegExp(r.value,'i');
var con=reg.exec(window.document.body.innerHTML);
alert(con);
}
}
window.onload=foo;
</script>
</head>
<body>
<form id="form1" runat="server">
<a href="http://paper.wenweipo.com/2012/05/16/CH1205160004.htm" >顶顶顶顶</a>
<input type="text" id="re" size="100px">
<input type="button" id="btn" value="匹配" />
</form>
</body>
</html>
这个意思?
ePattern = eDoc.getElementById("pattern"),
eSearch = eDoc.getElementById("search");
eSearch.onclick = function(){
var pattern = ePattern.value,
reg = new RegExp();
reg.compile(pattern, 'g');
console.dir(reg);
searchText(reg);
}
function searchText(reg){
var elems = Array.prototype.slice.call(content.window.document.body.getElementsByTagName("*"), 0);
childNodes = null;
alert(elems); for(var i = 0, len = elems.length; i < len; i++){
childNodes = elems[i].childNodes;
if(childNodes.length === 1 && childNodes[0].nodeType === 3){
elems[i].innerHTML = childNodes[0].nodeValue.replace(reg, function(arg){
alert(arg) return "<span style='color: red'>" + arg + "</span>";
});
}
}
}你能不能看下这个代码 需要改什么才能找到href