簡體   English   中英

jQuery-在鏈接上觸發自定義事件

[英]jQuery - trigger a custom event on a link

我正在嘗試使用jQuery運行此自定義'getOffer()'事件

<a href="javascript: void getOffer();" title="Submit for offer"><img src="images/img.jpeg"></a>

我已經嘗試了以下操作,但似乎不起作用(我正在使用Firefox Firebug console.log窗口)

$('a[title="Submit for offer"]').trigger('getOffer');

這是我正在嘗試的頁面: http : //bit.ly/1dpIMFk有人可以提出任何想法嗎?

 <a href="javascript: void getOffer();" title="Submit for offer"><img src="images/img.jpeg"></a>

$(document).ready(function(){
  $('a[title="Submit for offer"]').trigger('getOffer');
});

function getOffer(){
alert('link clicked');
}

似乎對我來說工作正常。我認為您沒有將事件觸發器包裝在准備好的文檔中。 DEMO

您可以使用

<a href="#" onClick="getOffer();"><img src="images/img.jpeg"></a>

在jQuery上創建自定義事件

首先向您的鏈接添加一些標識符(ID /類)

<a id="linkOffer" title="Submit for offer"><img src="images/img.jpeg"></a>

然后,創建您的CUSTOM事件。

//The function that will to the getOffer things
function getOffer() {
    //Do get offer...  
}

$(document).ready(function(){

    //Custom event pointing to the function
    $('a#linkOffer').on('getoffer',getOffer);

    //Default click event
    $('a#linkOffer').on('click',function(e){
         //Do click stuff.

         //Trigger your custom event.
         $(this).trigger('getoffer');

         //If you wish to not move the page, prevent the default link click behavior (moveing to other page)
         e.preventDefault();
    });
});

觸發器將不起作用,因為它會搜索元素中的click屬性。 解決方法可以是:

將click屬性添加到元素,然后調用jquery函數。

<a href="javascript: void getOffer();" title="Submit for offer"></a>
    <button value="yu" onclick="getOffer();"/>
<script>

 $("a[title='Submit for offer']").attr("onclick",$("a[title='Submit for offer']").attr('href')); // get value from href
 $("a[title='Submit for offer']").trigger('click');  


 function getOffer()
 {
     alert('j');
 }
</script>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM