我一直在尝试找到一种方法来做到这一点,但是没有找到许多专门与这种情况相关的资源。
我需要一个 javascript(如果需要的话可以使用 Jquery)来在网站上交换电话号码。
将指定 2 个数字。默认情况下,网站上会显示一个。
脚本需要能够创建 cookie 并通过识别 URL 字符串中的值来完成此操作。
例如: http://www.site.com/index.html?value=
'?value=' 将是值。
<小时/>此 URL(带有附加变量)会将用户带到同一站点,但是字符串中的变量将设置 cookie 并显示不同的数字。在删除 cookie 之前,默认号码不会再次显示。
由于我的服务器的情况,我无法使用 PHP(我知道,这会让事情变得更容易:P)
任何帮助将不胜感激。
最佳答案
已更新
演示:
转到这里:http://jsbin.com/imawo4/85
然后在这里:http://jsbin.com/imawo4/85/?value=john
然后使用这个:
处理 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 部分
<body>
<!--/ output numbers /-->
<div id="the_one_already_here"></div>
</body>
这应该按预期工作! ;-)
关于JavaScript 手机交换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2455844/