0
如果有人从iOS调用页面,我尝试替换href
。问题在于JavaScript不会仅替换搜索到的文本,而是替换所有的初始链接。例如:如何仅通过替换一些文本来更改href标记
<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://");
}
}
}
目前尚不清楚对我有什么做你期待的代码做...抱歉,但解释相当混乱 – Alessio