DDR爱好者之家 Design By 杰米

需求

在网页中单击某张图片,图片能放大显示,且能按顺序切换图片,同时,一些小图标和不符合要求的图片不能放大。
由于网页是在app中打开,图片的放大与切换由移动端实现,因此,需要用js调用原生方法,并传递所有图片的url

解决

var img = [];

for(var i=0;i<$("img").length;i++){
  //获取所有符合放大要求的图片,将图片路径(src)获取
  if(parseInt($("img").eq(i).css("width"))>20){
    img[i] = $("img").eq(i).attr("src");
  }
}
var img_info = {};
img_info.list = img;  //保存所有图片的url

var imgs = document.getElementsByTagName('img');
for(var i = 0;i < imgs.length; i++){
  if(parseInt($(imgs[i]).css('width')) > 20){
    //将索引当作img标签的属性进行存储
    $(imgs[i]).attr('index',i);
    $(imgs[i]).click(function () {
      //获取上面存储的图片的索引,这个索引就是当前图片的索引
      img_info.index = $(this).attr('index');
      //将信息转为json字符串
      var json = JSON.stringify(img_info);
      //判断是ios端还是android端
      if (_IsIOS()) {
        window.webkit.messageHandlers.showImg.postMessage(json);
      } else if (_IsAndroid()) {
        window.control.call('showImg',json);
      }
    });
  }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米