2012-01-11 10 views
5

最近、私はhtmlやonclicksを持たないクリック可能なオブジェクトをhtmlコードで持っているサイトをたくさん見てきました。私はまた、彼らのhref、onclick、onmousedown、onmouseup属性を警告しようとしましたが、それは "undefined"としか言いません。私は、これらのページに複雑なJavaScriptがたくさんあることに気付きました。特にhrefがないボタン、onclickなど

つのサイトは、私をバッフル: http://www.sharenator.com/Boy_Teaches_His_Puppy_How_to_Eat/#/doggy_01_Boy_Teaches_His_Puppy_How_to_Eat-0.html

それは実際にはかなり良いです。ボタンは選択できません。ボタンのIDはnextBtn、nextBtn2、prevBtnおよびprevBtn2です。

これを実装する方法はありますか?

+1

@karunchadhary @登録したばかりのので、StackOverflowコミュニティにようこそ。あなたの質問に答えた場合は、正解とマークしてください。 – Tehnix

答えて

4

jQueryの.click(コールバック)関数(http://api.jquery.com/click/)または.delegate(セレクタ、 'クリック'、コールバック)(jQuery 1.7より前)、.on( 'click'、セレクタ、コールバック) +)または.bind( 'クリック'、コールバック)。

<button id="clickable">Click Me!!</button> 

次にjQueryを使ってボタンをターゲット:

$("#clickable").click(function(){ 
    // Send user to this link 
    location.href = "http://www.takemehere.com"; 
}); 

あなたは)(.liveが廃止されていること:)

ように指摘してアンソニー・グリストへ

感謝私が与えたリンクとjQueryのホームページでこれについてもっと読むことができます。

UPDATE

実際のページがでこれを処理します。

コールれるonmousedownう
$('#prevBtn').mousedown (onBackward); 

function onBackward() { 
    showImg (currentId - 1); 
} 

矢印キーを使用する:

$(document).keyup (function (event) { 
    var activeElement = document.activeElement.tagName; 
    if (activeElement == 'INPUT' || activeElement == 'TEXTAREA') return; 
    //alert (window.location.pathname); 

    if (event.keyCode == 39) onForward(); 
    else 
    if (event.keyCode == 37) onBackward(); 
}); 

スライドショーのソースコードはhttp://www.sharenator.com/js/slideshow.jsを参照してください。

+0

'.live()'は推奨されていませんので、代わりに '.on()'(jQuery 1.7+)や '.delegate()'(jQuery 1.7より前)を使うべきです。 –

+0

「左」 - 「右」矢印のあるピクチャ間でのナビゲーションはどのように実装されますか? –

+0

@AnthonyGrist、それを指摘してくれてありがとう、ドキュメントを読んでいなかった:)あなたの提案に私のコードを編集してください。 – Tehnix

0

javascriptでは、要素を見つけてonClickイベントハンドラを指定します。例えば:

var myElement = document.body; // or document.getElementById(...), etc. 
myElement.onclick = function(event) {alert(event);} 

これはHTMLに何も表示されないよう、そして(多分難解なCSS以外...振る舞いを定義するための他の方法がない)あなたはリンク先のウェブサイトがそれをどうするかであるだろう。

0

jQuery UIライブラリを使用すると、指定した方法でボタンを作成できます。

jQuery UI

0

イベントハンドラは、おそらくなのjQueryなどのJavaScriptフレームワークを使用してバインドされています。彼らはDOM要素のonclickプロパティを使用しません。 clickイベントハンドラをjQueryを使用してボタンにバインドした後、ボタンをクリックしてボタンのonclick(FF 9にnullと表示)の値を表示する例については、this jsFiddleを参照してください。

0

javascriptを使用します。クリック機能は、例えば、JSで初期化することができる

<a id="uniqueId" href="#">Button</a> 

<script> 
    var button = document.getElementById('uniqueId'); 
    button.onclick = function(e) { 
     alert("clicked!"); 
    } 
</script> 
+0

この方法の問題は、私が実行したときの関数: 'alert(document.getElementById( 'uniqueId')。onclick)' –

0

、$( "#nextBtn")(機能)をクリックしてください。:ここでは例です。

関連する問題