[英]Extracting anchor text from anchor tag with JavaScript
我最近发布了关于使用JavaScript从锚标记中提取锚文本的问题。 我得到了一个答案。
但是,该代码在IE和Chrome中有效,但在Firefox中不起作用。
function extractText(){
var docId = "10";
var cId = "13";
var dName = "ASPIRIN/COUMARIN";
var anchText = "<a target=\"_blank\" href=hello?docId=" + docId + "&cId=" + cId +">" + dName +"</a>";
var str1 = document.createElement('str1');
str1.innerHTML = anchText;
var anc = str1.innerText;
alert(anc);
return anc;
}
我认为innerText
或innerHTML
或两者的属性在Firefox中不起作用。 您能否在上述代码适用于IE,Chrome,Firefox等的地方提供帮助?
Firefox似乎不支持innerText
属性,而是倾向于使用W3C的textContent
标准:
function extractText() {
var docId = "10";
var cId = "13";
var dName = "ASPIRIN/COUMARIN";
var anchText = "<a target=\"_blank\" href=hello?docId=" + docId + "&cId=" + cId + ">" + dName + "</a>";
var str1 = document.createElement('str1');
str1.innerHTML = anchText;
var anc = (str1.innerText || str1.textContent);
console.log(anc);
return anc;
}
extractText();
JS小提琴演示 。
假设您希望避免在每次调用时都检查这两个属性,只需使用以下命令检查浏览器支持的属性即可:
var textProperty = 'textContent' in document ? 'textContent' : 'innerText';
然后按如下方式使用它:
var anc = str1[textProperty];
JS小提琴演示 。
参考文献:
Firefox中使用的W3C标准的textContent
是innerText
的替代方法
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.