开发微信公众平台时,碰到文章中有很多图片,需要可以点开图片浏览;那么点击图片直接调用微信客户端自带的图片播放组件会省很多事。否则你得去摆弄折腾各种图片浏览插件,比如photoswipe。
个人封装功能成一个js文件。把该文件放到你需要的网页里面即可,这样文章当你点击图片时,就会调用图片浏览功能!
<script>
function addLoadEvent(func){
//将函数作为参数,此函数就是 onload 触发时需要执行的某个函数
var oldοnlοad=window.onload;
//将原来的 onload 的值赋给临时变量 oldonload。
if(typeof window.onload!="function"){
//判断 onload 的类型是否是 function。如果已经执行window.οnlοad=function(){...} 赋值,那么此时 onload 的类型就是 function
//否,则说明 onload 还没有被赋值,当前任务 func 为第一个加入的任务
window.οnlοad=func();
//作为第一个任务,给 onload 赋值
}else{
//是,则说明 onload 已被赋值,onload 中先前已有任务加入
window.οnlοad=function(){
oldonload();
func();
//作为后续任务,追加到先前的任务后面
}
}
}
var imgs=new Array();
var nowImgurl="";
function getPicInfo()
{
var imgObj=document.getElementsByTagName('img'); //获取图文中所有的img标签对象
for(var i=0; i<imgObj.length; i++)
{
imgs.push(imgObj[i].src);
//下面调用微信内置图片浏览组建
imgObj[i].οnclick=function(){
nowImgurl = this.src; //获取当前点击图片url
WeixinJSBridge.invoke("imagePreview",{
"urls":imgs,
"current":nowImgurl
})
}
}
}
addLoadEvent(getPicInfo); //监听事件
</script>