app內嵌vue h5,安卓和ios攔截H5點擊事件

安卓和ios攔截h5點擊事件,這個函數事件必須是暴漏在window下的vue

安卓和ios攔截普通h5函數:android

1 <div onclick = "show(),window.android.show()"></div>
2 <script>
3     function show(){
      //若是須要傳值,能夠在show裏添加參數,在上面的點擊事件中直接進行傳值就好
4 alert(1) 5 } 6 </script>

vue函數並無直接暴漏在window下,vue的點擊事件爲@click,因此上面寫法App方是攔截不到的ios

安卓和ios攔截vue點擊事件:函數

<div id="box" @click="show('aaaa'),window.android.show('aaaa')"></div>  //括號內爲傳參內容,第一個show是爲ios傳值,點擊的時候觸發了在window裏定義的函數,ios直接攔截到zhi這個函數,安卓能夠直接攔截到vue裏定義的函數
<script src="vue.js"></script>  
<script>
    function zhi(a){    //定義一個暴漏給window的函數,放在點擊事件中,ios攔截函數是攔截的這個暴漏給window的函數
        console.log(a)
    }
    new Vue({
        el:"#box",
        data:{
            
        },
        methods:{
            show:function(a){
                zhi(a);  //a爲一個參數,能夠進行給ios和安卓進行傳值
                alert(1);
           }
        }
    })
</script> //和Android、ios交互的時候,給安卓的攔截字段爲show,給ios攔截的字段爲zhi                 
相關文章
相關標籤/搜索