在微信里看過文章的應該知道,文章里的圖片點擊后可以放大、分享和保存。
然而自己在微信里開發的網頁,里面的圖片點擊后沒辦法實現這個效果,然后就去看了下微信JS文檔,里面有個previewImage可以調用。
previewImage是微信客戶端給內置瀏覽器增加的一個Javascript Interface,通過調用這個API,可以調起微信客戶端提供的大圖片查看組件。
官方說明和例子:
1 wx.previewImage({ 2 current: '', // 當前顯示圖片的http鏈接 3 urls: [] // 需要預覽的圖片http鏈接列表 4 });
1 document.querySelector('#previewImage').onclick = function () { 2 wx.previewImage({
current: 'http://img5.douban.com/view/photo/photo/public/p1353993776.jpg', 3 urls: [ 4 'http://img3.douban.com/view/photo/photo/public/p2152117150.jpg', 5 'http://img5.douban.com/view/photo/photo/public/p1353993776.jpg', 6 'http://img3.douban.com/view/photo/photo/public/p2152134700.jpg' 7 ] 8 }); 9 };
可以看出例子中的數據是寫死在里面的,所以要自己寫個JS,然后把指定div里面圖片加載到wx.previewImage中
1 <div id="previewImage"> 2 <img src="http://www.hackhp.com/1.jpg"> 3 <img src="http://www.hackhp.com/2.jpg" > 4 </div>
把圖片鏈接都添加到wx.previewImage里
1 <script> 2 $(document).on('click', '#previewImage img',function(event) { 3 var imgArray = []; 4 var curImageSrc = $(this).attr('src'); 5 var oParent = $(this).parent(); 6 if (curImageSrc && !oParent.attr('href')) { 7 $('#previewImage img').each(function(index, el) { 8 var itemSrc = $(this).attr('src'); 9 imgArray.push(itemSrc); 10 }); 11 wx.previewImage({ 12 current: curImageSrc, 13 urls: imgArray 14 }); 15 } 16 }); 17 </script>