鍍金池/ 問答/PHP  數(shù)據(jù)庫  HTML/ trigger()函數(shù)多次使用是否會造成代碼速度下降,或其他不良效果。

trigger()函數(shù)多次使用是否會造成代碼速度下降,或其他不良效果。

問題描述

想做成點擊頭像,上傳圖片,選中圖片,上傳成功,用戶頭像更改程剛才上傳的圖片這樣的效果。(現(xiàn)在已經(jīng)實現(xiàn))
但是很多前端不建議多次使用trigger()函數(shù),不是很明白其中的原因,特此發(fā)問。
trigger()函數(shù),多次使用是否會對程序造成不良影響?如程序運行速度降低等..

問題出現(xiàn)的環(huán)境背景及自己嘗試過哪些方法

emm,如果有哪位大神有相關(guān)的代碼也可以發(fā)上來。

相關(guān)代碼

// 請把代碼文本粘貼到下方(請勿用圖片代替代碼)

    // 這是HTML上傳圖片
    <form action="{:url('index/User/userImg')}" enctype="multipart/form-data" method="post" style="display:none;">
      <input type="file" name="image" /> <br>
      <input type="submit" name="upImg" value="上傳" />
    </form>
    // 上傳圖片
    $('.userImg').click(function(){
        $("input[name='image']").trigger('click');
        $("input[name='image']").change(function () {
            var img = $(this).val();
            if (img != '') {
                $("input[name='upImg']").trigger('click');
            }
        })
    })

你期待的結(jié)果是什么?實際看到的錯誤信息又是什么?

在我這個項目中,trigger()是否是必須要用的,如果不是,請問該如何修改代碼?或者提出寶貴建議。(請不要說用插件就好,還是希望多鍛煉下動手能力。謝謝。)

回答
編輯回答
哚蕾咪

性能可能會有影響,因為本來是需要直接執(zhí)行點擊事件對應(yīng)的方法就可以了,你現(xiàn)在是直接觸發(fā)點擊事件,然后間接的執(zhí)行對應(yīng)的方法。不過在我看來影響可能比較小。性能可能直觀上看不出來。最好的方法是調(diào)用事件對應(yīng)的方法。而你這個程序沒有,那就調(diào)用form的submit方法

$('form').submit()
2017年7月5日 01:49