【发布时间】:2017-08-26 20:11:37
【问题描述】:
如果有人从 iOS 调用该页面,我会尝试替换 href。问题在于 JavaScript 不仅替换了搜索到的文本,而且替换了所有初始链接。例如:
<a href="http://example.com" class='dynamicLink'>test</a>
当iOS手机或平板在此链接更改时
<a href="http://ios+example.com" class='dynamicLink'>test</a>
但是 JavaScript 替换了所有
<a href="http://ios+" class='dynamicLink'>test</a>
有人知道这个问题吗
window.onload = function changeLinks() {
var href = "http://ios+"
var links =
document.getElementsByClassName('dynamicLink');
if (navigator.userAgent.match(/Android/i) ||
navigator.userAgent.match(/webOS/i) ||
navigator.userAgent.match(/iPhone/i) ||
navigator.userAgent.match(/iPad/i) ||
navigator.userAgent.match(/iPod/i) ||
navigator.userAgent.match(/BlackBerry/i) ||
navigator.userAgent.match(/Windows Phone/i)
) {
for (var i = 0; i < links.length; i++) {
links[i].href = href.replace('http://', "http://ios+");
}
} else {
for (var i = 0; i < links.length; i++) {
links[i].href = href.replace('http://', "http://");
}
}
}
【问题讨论】:
-
我不清楚你希望该代码做什么......对不起,但解释很混乱
标签: javascript jquery html ios