javascript将IMG标签中的图片转换为<a> tag</a>中的实际链接图片

时间:2012-07-05 02:36:03

标签: javascript image hyperlink


我之前已经问过这个问题并试图多次解决但没有运气 作为一名没有javascript经验的非程序员,
我想要一个书签或类似的东西,帮助我用图像链接指向的原始(全尺寸)图像替换页面上的所有图像。例如,如果我点击链接图像,它会将我带到全尺寸图像,但我希望页面上显示完整尺寸的图像。

以下是网站代码的示例:

<a href="http://www.diyphysics.com/wp-content/uploads/2012/02     Multiplier_schematic.jpg">
<img class="aligncenter wp-image-627" title="Multiplier_schematic" src="http://www.diyphysics.com/wp-content/uploads/2012/02/Multiplier_schematic-1024x205.jpg" alt="Schematic of Dual-Polarity High-Voltage Cockroft-Walton Multiplier by David and Shanni Prutchi" width="614" height="123"/>
</a>

我希望它是:

<img class="aligncenter wp-image-627" title="Multiplier_schematic" src="http://www.diyphysics.com/wp-content/uploads/2012/02/Multiplier_schematic.jpg" alt="Schematic of Dual-Polarity High-Voltage Cockroft-Walton Multiplier by David and Shanni Prutchi"/>

宽度和高度限制已被删除。

举个例子,这个网站
http://www.pocketmagic.net/?p=802
有许多小的低分辨率图像显示为链接,我喜欢书签,用他们指向的高分辨率图像替换所有这些图像。这样我就可以整个页面保存,或者导出它......

谢谢!

编辑: 1. @Frosco,我试过了,但是凭借我对JS的一点知识,我无法去任何地方 2. @PhD,它应该是一个javascript:protocol的bookmarlet。面向用户,而不是Web开发人员。

解决: 感谢John,我明白了,

这是JS书签,以防有兴趣:

javascript:(function(e,a,g,h,f,c,b,d){if(!(f=e.jQuery)||g>f.fn.jquery||h(f)){c=a.createElement("script");c.type="text/javascript";c.src="http://ajax.googleapis.com/ajax/libs/jquery/"+g+"/jquery.min.js";c.onload=c.onreadystatechange=function(){if(!b&&(!(d=this.readyState)||d=="loaded"||d=="complete")){h((f=e.jQuery).noConflict(1),b=1);f(c).remove()}};a.documentElement.childNodes[0].appendChild(c)}})(window,document,"1.3.2",function($,L){$('a img').each(function(index) {    var currentElement= $(this);    var anchor = currentElement.parent();    var highResSource = anchor.attr("href");    var newImage = "<img src='" + highResSource + "'/>" +"</div>";    anchor.html(newImage);});});

2 个答案:

答案 0 :(得分:0)

这样的事情应该让你开始:

$('a img').each(function(index) {
    var currentElement= $(this);
    var anchor = currentElement.parent();
    var highResSource = anchor.attr("href");
    var newImage = "<img src='" + highResSource + "'/>";
    anchor.html(newImage);
});​

答案 1 :(得分:0)

您可以尝试.unwrap()

$('img').each(function() {
   var $this = $(this);
   if ($this.attr('src') === $this.parent('a').attr('href')) {
       $this.unwrap();
   }
});