- 締切済み
onClick の記述方法について
初心者のため、もしお分かりでしたらご教示頂ければ幸いです。 以下の記述にこのような onclick属性を追加したいと思っております。 Google Analyticsのイベントトラッキングを計測するためのものです。 onClick="_gaq.push(['_trackEvent', 'top', 'head_banner', 'top__head_banner_zzzzzzz']);" 各リンク先にそれぞれ設定するためには、どのように記述すればよろしいのでしょうか。 $(function() {$("#showcase").showcase ({images: [ { url: "http://www.111.jp/111.jpg", description: "テスト", link: "http://www.aaa.jp", target:"_top"}, { url: "http://www.111.jp/222.jpg", description: "テスト", link: "http://www.bbb.jp", target:"_top"}, { url: "http://www.111.jp/333.jpg", description: "テスト", link: "http://www.ccc.jp", target:"_top"}, ], <---中略---> }); }); すみませんが何卒宜しくお願い致します。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- fujillin
- ベストアンサー率61% (1594/2576)
なんかのライブラリを使用しているのだろうけれど、よくわからないので、回答になってませんが。 「showcase」を手掛かりに探してみると、 こんなのとか http://dev.victorstanciu.ro/experimente/prototype-showcase/ こんなのとか http://www.recoding.it/Demos/jQuery/Showcase/Documentation あるいは、こんなのも (笑) http://archiva.jp/web/javascript/simple-showcase.html $を使っているので、prototypeかjQueryあたりなのかも知れませんが、他にもshowcaseがあるのかも知れないのでライブラリに頼らない方法を… DOMの構成が最終的に以下となると仮定して、 <div id="showcase"> <div id="slider"> <a ><img></a> ・・・・・・ </div> </div> (↑のjqueryの場合の構成を模しています) /*@cc_on@*/ document./*@if(1)attachEvent('on'+@else@*/addEventListener(/*@end @*/'click',function(e){ var p, t = e.target || e.srcElement; if(t.nodeName != "IMG") return; if(p=t.parentNode) p = p.parentNode; if(p && p.id == "slider" && p.parentNode.id == "showcase") clickFunc.call(t, e); }, false); function clickFunc(e){ alert(this.nodeName + " is clicked"); } で、クリックを取得可能です。 (DOM構成が違う場合は、チェック内容を修正の要あり) もっとも、jQeuryベースのものだったら $(function(){ $("#showcase #slider img").click(function(e){ clickFunc.call(this, e); }); }); で、ほぼ同様のことが可能になりますけど。 とはいうものの、idを重ねるのはお馬鹿っぽいので省いたほうがよろしいかとは思いますが。 (文書構造が正しく作成される保証があるのか不明なので、とりあえずこのような書き方に…) *) _gaq.push()のパラメータに関しては知りませんので、そちらの方はちゃんと設定してあげてください。 >各リンク先にそれぞれ設定するためには、 >どのように記述すればよろしいのでしょうか。 あれっ? 「各リンク先」って、もしかしてリンクした先から_gaq.push()を呼び出したいってことなのかなぁ? それは、各リンク先に記述するべきでは? これ以上は、エスパーの登場に期待!!