我想对上一个问题中的一些代码进行一些改进:
// the new base url
var base = ' https://www.example.co.uk/gp/wine/order?ie=UTF8&asin=';
var links = document.getElementsByTagName('a');
for(var i = 0;i < links.length;i++){
// check each link for the 'asin' value
var result = /asin=([\d\w]+)/.exec(links[i].getAttribute('href'));
if(result){
// make a new url using the 'base' and the 'asin' value
links[i].setAttribute('href', base+result[1]);
}
}
现在,我可以让它只查看来自图像的链接,而不是作用于所有链接吗?
这是一个 HTML 片段来说明我的意思:
<a href="/shop/product?ie=UTF8&asin=Z00FDLN878&tab=UK_Default" target="_blank"><img width="125" height="125" border="0" src="http://ecx.images-amazon.com/images/I/01W9a7gwosL.jpg" alt="43453"></a>
那是一个图片链接——我确实希望它对此采取行动。
不可能的?
我的直觉是,这在代码中实际上是不可能的——因为document.getElementsByTagName('a')
看不到文本链接和图像链接之间的区别。