【发布时间】:2015-11-09 04:37:47
【问题描述】:
我正在尝试在 Tumblr 文本帖子中使用高分辨率。 当我将照片上传到文本帖子中时,Tumblr 会将其大小调整为 500 像素
显示的图像:
<img src="http://41.media.tumblr.com/d8ceea903cb5cd667e416877bf4a8a70/tumblr_inline_nxihvl2VdX1r5y5rv_500.jpg" alt="image" data-orig-width="2640" data-orig-height="3960" width="500" height="750">
如果我将 500 更改为 data-orig-width 值不会给我原始图像,但我只想要一个 1280 图像。如果我将 500 更改为 1280,它会给我一个 1280 的图像
500px:http://41.media.tumblr.com/d8ceea903cb5cd667e416877bf4a8a70/tumblr_inline_nxihvl2VdX1r5y5rv_500.jpg
1280px:http://41.media.tumblr.com/d8ceea903cb5cd667e416877bf4a8a70/tumblr_inline_nxihvl2VdX1r5y5rv_1280.jpg
我尝试将图像的属性从 500 更改为 1280 并且它有效,但只有当帖子包含一个上传的图像时,它才不会更改使用 html 编辑器发布的图像。如果帖子中包含从编辑器上传的 2 张图片,则 jQuery 代码将显示两次 1280 中的第一张图片,但不会显示第二张图片。
jQuery 代码:
//Retrieve image src path
var img_url = $('.tmblr-full img').attr("src");
//Retrieve the width at which the image is displayed, 500px
var normal_width = parseInt($('.tmblr-full img').attr("width"));
//Replace 500px with the original image width or 1280
var new_url = img_url.replace(normal_width, 1280);
//Assign new widths to the src and to the width attributes
$(".tmblr-full img").attr( "width", 1280);
$(".tmblr-full img").attr( "src", new_url);
我尝试过改变
var img_url = $('.tmblr-full img').attr("src");
到
var img_url = $(this).find('.tmblr-full img').attr("src");
但它什么也没做
【问题讨论】:
-
我想也许你需要将你的函数包装在一个 jquery each() 函数中。像
$('.tumblr-full img').each(function(){ $(this).attr("width")... });这样的东西如果没有指向你的 tumblr 的链接就很难测试 -
还有 parseInt($('.tmblr-full img').attr("width"));如果代码读取“500px”将不起作用,因为 px 部分将使整个事情成为 NaN。不过我觉得你不用担心这个,如果你愿意的话,把图片宽度换成1280就行了。