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


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

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

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攔截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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM