JQuery: легкий способ записи и чтения параметров в URL-хэш? - PullRequest
0 голосов
/ 31 января 2012

Я использую jQuery и хотел бы легкий плагин для записи и чтения параметров хэша из URL.

Например, я хотел бы иметь возможность прочитать URL-адрес, например index.html#color=red&day=monday, и получить { color: 'red', day: 'monday' }.

Я также хотел бы иметь возможность записывать параметры в хешпроверка наличия переменной и добавление или обновление по мере необходимости.

Кто-нибудь знает плагин lightweight , который может это сделать, или мне нужно написать свой собственный?

Очевидно, BBQ делает все этои многое другое, но мне не нужно все управление историей, и я не хочу включать много кода, который мне не нужен.

Ответы [ 3 ]

3 голосов
/ 31 января 2012

это будет работать, вы можете поместить его в функцию или использовать прямо:

  var hash = top.location.hash.replace('#', '');
    var params = hash.split('&');
    var result = {};
    for(var i = 0; i < params.length; i++){
       var propval = params[i].split('=');
       result[propval[0]] = propval[1];
    }
2 голосов
/ 18 ноября 2013

purl может читать параметры фрагмента:

$.url("index.html#color=red&day=monday").fparam("color"); // returns "red"

Чтобы написать их, вы можете использовать помощник jquery $.param(). Вот такая скрипка

1 голос
/ 31 января 2012

Не уверен в легком плагине, но вы можете использовать что-то вроде

    var hashdata = new Object();

    jQuery.each(window.location.hash.replace(/^#/,'').split('&'), function(i,t){

       var s = t.split('=');
       hashdata[s[0]] = s[1];

   });

Который, если я прав, должен возвратить объект хеш-данных в URL. Затем, зная текущие хеш-данные, вы можете использовать window.location.hash, чтобы изменить это, как и когда вы хотите

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...