質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Backbone.js

Backbone.jsはRESTfulなウェブアプリケーションを構築するJavaScriptフレームワークです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

3回答

4960閲覧

[#のついたリンクが押されたときイベントを発火させたい]

star24star

総合スコア115

Backbone.js

Backbone.jsはRESTfulなウェブアプリケーションを構築するJavaScriptフレームワークです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

2クリップ

投稿2015/12/22 03:55

<a href="#aaa">AAA</a> <a href="#bbb">BBB</a> <a href="#ccc">CCC</a>

といったリンクがあったとして、
「#aaaのリンクが押されたとき」などではなく
「#のついたリンクが押されたときにイベントを発火させたい」時は
どのように書いたら良いでしょうか?

idやclass付いている場合は

ui: { testPage : 'id_or_className' }, events: { 'change @ui.testPage' : 'testPage' }, testPage(){ // 処理 }

といった感じになりますが、#リンクの時が分かりません。
教えていただけると幸いでございます。
宜しくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

think49

2015/12/29 03:33

音沙汰がないようですが、意に沿わない回答だったのでしょうか。何らかのレスポンスが欲しいところです。
guest

回答3

0

Marionette.jsを使っているという前提で回答させていただきます。

以下のように記述すれば、href属性が'#'で始まるa要素に対するクリックイベントを捕捉できるかと思います。

javascript

1ui: { 2 testPage: 'a[href^=\'#\']' 3}, 4events: { 5 'click @ui.testPage' : 'testPage' 6}, 7 8testPage(){ 9 // 処理 10}

投稿2016/03/17 15:24

SatoruKitani

総合スコア49

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

前方一致なら jQuery('a[href^=#]')で、部分一致なら jQuery('a[href*=#]') を使用して下さい。
jQuery を使わないなら querySelectorAll() を使って下さい。

JavaScript

1<a href="#aaa">AAA</a> 2<a href="#bbb">BBB</a> 3<a href="#ccc">CCC</a> 4<script> 5'use strict'; 6jQuery('a[href^=#]').on('click', function (event) { console.log(event.type); }); 7</script>

Re: star24star さん

投稿2015/12/22 04:45

編集2015/12/22 04:46
think49

総合スコア18162

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

クリックしたときにhrefを正規表現でチェックする感じです。

Javascript

1$("a").click(function(){ 2 var a_link = $(this).attr("href"); 3 var regexp = /^#.+/; 4 5 if(regexp.test(a_link)){ 6 //「#」が先頭についていたときの処理 7 } 8});

投稿2015/12/22 04:11

rossi46hiro

総合スコア992

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問