Javascript Phone Swap - PullRequest
       10

Javascript Phone Swap

0 голосов
/ 16 марта 2010

Я пытался найти способ сделать это, но не нашел много ресурсов, которые конкретно относятся к этой ситуации.

Мне нужен javascript (при необходимости можно использовать Jquery) для замены телефонных номеров на сайте.

  • 2 числа будут указаны. По умолчанию можно показывать на сайте.

  • Сценарий должен иметь возможность создавать cookie и делать это, распознавая значение в строке URL.


Например: http://www.site.com/index.html?value=

'? Value = ' будет значением.


Этот URL (с дополнительной переменной) приведет пользователя на тот же сайт, но переменная в строке установит cookie и отобразит другое число. Номер по умолчанию не будет отображаться снова, пока файлы cookie не будут удалены.

Из-за ситуации с моим сервером я не могу использовать PHP (я знаю, что это намного упростит задачу: P)

Любая помощь будет принята с благодарностью.

Ответы [ 2 ]

1 голос
/ 16 марта 2010

ОБНОВЛЕНО

ДЕМО:

ПОЙДИТЕ сюда: http://jsbin.com/imawo4/85

ТОГДА здесь: http://jsbin.com/imawo4/85/?value=john

включает jQuery Cookie Plugin

затем используйте это:

ПАРАМЕТР URL РУЧКИ

  $.extend({
        getUrlVars: function(){
        var vars = [], hash;
        var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
         for(var i = 0; i < hashes.length; i++)
          {
        hash = hashes[i].split('=');
         vars.push(hash[0]);
        vars[hash[0]] = hash[1];
       }
      return vars;
 },
     getUrlVar: function(name){
     return $.getUrlVars()[name];
     }
  });

ГЛАВНЫЙ КОД

$(function() {
// SETTINGS
var identity = 'john';
var phone_number_1 = '555-555-555';
var phone_number_2 = '666-666-666';
var redirect = 'http://jsbin.com/imawo4/85/';

//MAIN SCRIPT
var url_query = $.getUrlVar('value');   
var coockie = $.cookie('phone_number');  
var swapped_phone_number = ( coockie == 'VALID' ) ? phone_number_1 : phone_number_2;
if ( url_query == identity && coockie != 'VALID' && url_query != undefined ) {
$.cookie( 'phone_number' , 'VALID' , { expires: 10 } );
window.location.href = redirect;}
if ( url_query != identity && coockie == null && url_query != undefined ) {
$.cookie( 'phone_number' , null );  
alert('INVALID');}
$('#the_one_already_here').text(swapped_phone_number);
});

HTML PART

<body>
<!--/ output numbers /-->
<div id="the_one_already_here"></div>
</body>

Это должно работать как положено! ; -)

1 голос
/ 16 марта 2010

Если вы используете jQuery, то добавление jQuery Cookie Plugin сделает это просто. Вот пример быстрого кода (код примечания не проверен):

var value = window.location.search.match(/[?&]value=(.*?)(&|$)/);
if (value){
    $.cookie("phoneValue", value[1]);
}
if ($cookie("phoneValue")){
    // set innerHTML to $.("phoneValue")
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...