Поймать на странице ссылки с помощью jQuery - PullRequest
1 голос
/ 03 февраля 2010

Привет, я хочу вызвать функцию, когда пользователь нажимает ссылки на страницы, например, abc.com/hello.html#variable1. Я хочу поймать # varible1 и выполнить функцию.

Ответы [ 4 ]

2 голосов
/ 03 февраля 2010

Если вы хотите получить строку после хеша:

$("a[href*='#']").click(function() {
    var hash = this.href.replace(/.*#(.*)$/, '$1');
    // do something
    return false
});
1 голос
/ 03 февраля 2010

Захватить хеш и вывести его из строки:

$("a[href*='#']").click(function(e){
  var hash = $(this).attr('href').substring($(this).attr('href').indexOf("#"));
  //hash = #var
  function(hash);
});
0 голосов
/ 03 февраля 2010

Если вы хотите запустить функцию для ссылок с динамически вставляемыми хэшами, используйте это:

$(document).click(function (event) {
    var target = $(event.target);
    if (target.filter("a[href*='#']").size() > 0) {
        var hash = target.attr("hash");

        // Do something with hash.

        event.preventDefault();
    }
});
0 голосов
/ 03 февраля 2010

Чтобы прикрепить логику ко всем хеш-ссылкам, вы можете сделать следующее:

$("a[href^='#']").click(function(e){
  // user clicked an inpage link
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...