鍍金池/ 問答/HTML5  PHP  HTML/ 為什么這個(gè)點(diǎn)擊事件里的方法沒有執(zhí)行呢?

為什么這個(gè)點(diǎn)擊事件里的方法沒有執(zhí)行呢?

偽代碼如下;

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
<a id="eng" href="">ENGLISH</a>
</body>
</html>
<script src="https://cdn.staticfile.org/jquery/3.3.1/jquery.js"></script>
<script>

    $(function(){

        $("#eng").on('click', function(){

            fn1();
            fn2();
            fn3();

        });

        function fn1(){
            console.log('fn1');
        };
        function fn2(){
            console.log('fn2');
        }
        function fn3(){
            console.log('f3');
        }

    });


    function fnK1(){
        console.log('fnK1');
    }
    function fnK2(){
        console.log('fnK2');
    }
    function fnK3(){
        console.log('fnK3');
    }

    fnK1();
    fnK2();
    fnK3();



</script>

這里的邏輯是,正常情況下加載fnK1(), fnK2(), fnK3()這三個(gè)方法;點(diǎn)擊id=eng這個(gè)鏈接之后,加載click事件里的三個(gè)方法;


更新了一下主樓的偽代碼,可以在本地跑一下看看;
把代碼抽出來寫了個(gè)demo定位一下問題,fn1()這三個(gè)方法都執(zhí)行了;我知道是因?yàn)閒nK1()這三個(gè)方法是最后順序執(zhí)行的,所以導(dǎo)致的這個(gè)問題;所以,應(yīng)該是這塊的代碼邏輯有問題...

回答
編輯回答
淡墨

不會(huì)有問題的, 你把幾個(gè)幾個(gè)函數(shù)簡(jiǎn)化下只輸出一些文字, 排除函數(shù)執(zhí)行腳本出錯(cuò)

2017年11月9日 22:32
編輯回答
幼梔

你這里a標(biāo)簽?zāi)J(rèn)應(yīng)該會(huì)刷新當(dāng)前頁面,點(diǎn)擊不會(huì)觸發(fā)click事件,a 加上href=“javascrip:;” 應(yīng)該就可以了

2018年4月18日 00:42
編輯回答
夢(mèng)囈

你這問題沒有說明,忽略引入錯(cuò)誤,假如你的腳本是在你的body頭部之上,那就是你說的情況了,麻煩你在測(cè)試定位詳細(xì)點(diǎn)

2017年9月29日 02:10
編輯回答
膽怯

瀏覽器原因、jquery版本問題都會(huì)出現(xiàn)這些問題,建議你console下

2018年2月12日 18:38
編輯回答
舊言

經(jīng)驗(yàn)證,可執(zhí)行。 問個(gè)比較弱的問題,你的腳本在瀏覽器開發(fā)者工具里提示警告了嗎:會(huì)不會(huì)沒有引入jQuery,也或者有腳本報(bào)錯(cuò)

2017年7月27日 23:38