jQuery - 在链接上触发自定义事件

时间:2013-08-28 11:14:07

标签: javascript jquery

我正在尝试使用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 任何人都可以提出任何想法吗?

4 个答案:

答案 0 :(得分:1)

 <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

答案 1 :(得分:1)

您可以使用

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

答案 2 :(得分:1)

在jQuery上创建自定义事件

首先在链接中添加一些标识符(id / class)

<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();
    });
});

答案 3 :(得分:1)

触发器不起作用,因为它在元素中搜索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>