0

アプリケーションのトップ ナビゲーションに次のリンクがあります。

<a class="nav" href="navigation.html?go=main" onClick="navigation('main'); return false;">Main Menu</a>

私がする必要があるのは、jQuery を使用して「href」属性と「onclick」属性の両方を上書きし、ユーザーがこのリンクをクリックするたびにカスタム アラートを表示することです。

ここに私がこれまで持っているコードがあります。ただし、問題は、アラートがほんの一瞬表示された後、何らかの理由でメイン メニュー ページへのリダイレクトが引き続き行われることです。

$('.nav').click(function() {
  $(this).attr("href","#");
  $(this).attr("click","alert('TEST')");
});
4

5 に答える 5

1

jQuery のevent.preventDefault()methodを使用して、 を引数として渡し、それeventを呼び出しpreventDefault()ます。

$('.nav').click(function(event) {
    event.preventDefault();

    $(this).attr("href","#");
    $(this).attr("click","alert('TEST')");
});
于 2013-05-29T12:59:23.033 に答える
0

多分あなたはこれが欲しい:

http://jsfiddle.net/LZ6gx/

$(function () {
    $('.nav').each(function () {
        $(this).attr("href", "#").attr("onClick", "alert('TEST');" + $(this).attr('onClick') + "");
    });
});
于 2013-05-29T13:09:56.667 に答える
0

簡単に書くことができます。

$('.nav').click( function() { 
    //do something
    return false;
  } );
于 2013-05-29T12:59:53.903 に答える
0

試してみてくださいreturn false

$('.nav').click(function(event) {
   $(this).attr("href","#");
   $(this).attr("click","alert('TEST')");
   return false;
});
于 2013-05-29T12:59:55.157 に答える