使用javascript过滤输出图像链接

时间:2013-06-07 21:10:02

标签: javascript jquery prettyphoto

我正在使用带有wordpress的prettyPhoto灯箱

我需要wordpress gallery缩略图150px显示而不是默认的prettyPhoto缩略图(他们使用大图像作为缩略图)

这是创建缩略图的代码

for (var i=0; i < pp_images.length; i++) {
    if(!pp_images[i].match(/\b(jpg|jpeg|png|gif)\b/gi)){
        classname = 'default';
        img_src = '';
    }else{
        classname = '';
        img_src = pp_images[i];
    }
    toInject += "<li class='"+classname+"'><a href='#'><img src='" + img_src + "' width='75' height='75' alt='' /></a></li>";
};

这是图片链接的输出

<img src="http://127.0.0.1/wordpress/photopname1.jpg" width="75" height="75" alt="">
<img src="http://127.0.0.1/wordpress/photopname2.gif" width="75" height="75" alt="">
<img src="http://127.0.0.1/wordpress/photopname3.png" width="75" height="75" alt="">


我需要输出像这样

<img src="http://127.0.0.1/wordpress/photopname1-150x150.jpg" width="75" height="75" alt="">
<img src="http://127.0.0.1/wordpress/photopname2-150x150.gif" width="75" height="75" alt="">
<img src="http://127.0.0.1/wordpress/photopname3-150x150.png" width="75" height="75" alt="">

添加图片扩展名“-150x150”

谢谢:)

2 个答案:

答案 0 :(得分:2)

如果我理解你的话,你只需要这样:

 toInject += "<li class='"+classname+"'><a href='#'><img src='" + img_src.split(".").join("-150x150.") + "' width='75' height='75' alt='' /></a></li>";

问题编辑后更新: 您是否可以像这样添加完整路径:

 toInject += "<li class='"+classname+"'><a href='#'><img src='http://127.0.0.1/wordpress/" + img_src.split(".").join("-150x150.") + "' width='75' height='75' alt='' /></a></li>";

或者您的pp_images数组已经包含完整路径?

答案 1 :(得分:2)

处理多个. s

的解决方案
var size = '-150x150';



for (var i=0; i < pp_images.length; i++) {
  if(!pp_images[i].match(/\b(jpg|jpeg|png|gif)\b/gi)){
      classname = 'default';
      img_src = '';
  }else{
      classname = '';
      img_src = pp_images[i];
  }

  //ex: img_src = a.b.png
  var src = img_src.split('.'); //ex: ['a', 'b', 'png']
  src[src.length - 2] = src[src.length - 2] + size; //ex: ['a', 'b-150x150', 'png']
  src = src.join('.');//a.b-150x150.png

  toInject += "<li class='"+classname+"'><a href='#'><img src='" 
           + src + "' width='75' height='75' alt='' /></a></li>";
};