根据 url 参数设置 Cookie
Set a Cookie based on url Parameter
每当用户点击我们的附属链接之一并在 URL 中使用 "src=uni" 登陆我们的网站时,我需要设置一个 cookie。 URLs 看起来像这样:
http://www.myadmin.com?src=uni&utm_source=uni&utm_content=[publisher_ID]
创建cookie的函数:
function SetCookie() {
var url = window.location.href;
if(url.indexOf('?src' + uni) = 1)
document.cookie="QueryCookie";
}
有人可以帮助我告诉我在根据查询参数创建此 Cookie 时哪里出错了吗?
您需要修复的第一件事是:
if(url.indexOf('?src' + uni) = 1)
应该是(这检查它是否存在于索引 1):
if(url.indexOf('?src=' + uni) === 1)
或(这会检查它是否存在)
if(url.indexOf('?src=' + uni) !== -1)
接下来,您需要将 src 设置为 uni 并使其可供整个站点访问:
document.cookie="src="+uni+"; path=/; domain=.myadmin.com";
添加 path=/ 和 domain=.myadmin.com 将允许您在该域的所有路径上访问 cookie,并且域部分允许它在所有子域(即 www.myadmin.com 以及博客。myadmin.com,等等)
所以一起:
function SetCookie() {
var url = window.location.href;
if(url.indexOf('?src='+uni) !== -1)
document.cookie="src="+uni+"; path=/; domain=.myadmin.com";
}
这是一些基本信息:
http://www.w3schools.com/js/js_cookies.asp
或更深入、更准确的文档:
https://developer.mozilla.org/en-US/docs/Web/API/Document/cookie
这里有几件事:
function SetCookie() {
var url = window.location.search;
if(url.indexOf('?src=uni') !== -1)
document.cookie="src=uni";
}
1) 使用location.search
来缩小你的范围,不是必须的,但错误的空间较小,
2) 使用!== -1
测试indexOf
方法。 indexOf
returns "-1" 如果找不到匹配项。并且 "0" 如果它在字符串的开头找到匹配项。字符串是 "zero indexed" 这意味着字符串中的第一个字符位于位置“0”。
3) 添加等号 =
以及您的参数名称:src=
.
4) 此外,如果这是您要查找的内容,请使用字符串 "uni",而不是名为 uni
的变量。如果 "src" 可以是各种值,那么我们需要添加更多逻辑来说明这一点。
5) 并且在分配给 document.cookie
时使用 key/value 对,如:key=value
.
每当用户点击我们的附属链接之一并在 URL 中使用 "src=uni" 登陆我们的网站时,我需要设置一个 cookie。 URLs 看起来像这样:
http://www.myadmin.com?src=uni&utm_source=uni&utm_content=[publisher_ID]
创建cookie的函数:
function SetCookie() {
var url = window.location.href;
if(url.indexOf('?src' + uni) = 1)
document.cookie="QueryCookie";
}
有人可以帮助我告诉我在根据查询参数创建此 Cookie 时哪里出错了吗?
您需要修复的第一件事是:
if(url.indexOf('?src' + uni) = 1)
应该是(这检查它是否存在于索引 1):
if(url.indexOf('?src=' + uni) === 1)
或(这会检查它是否存在)
if(url.indexOf('?src=' + uni) !== -1)
接下来,您需要将 src 设置为 uni 并使其可供整个站点访问:
document.cookie="src="+uni+"; path=/; domain=.myadmin.com";
添加 path=/ 和 domain=.myadmin.com 将允许您在该域的所有路径上访问 cookie,并且域部分允许它在所有子域(即 www.myadmin.com 以及博客。myadmin.com,等等)
所以一起:
function SetCookie() {
var url = window.location.href;
if(url.indexOf('?src='+uni) !== -1)
document.cookie="src="+uni+"; path=/; domain=.myadmin.com";
}
这是一些基本信息:
http://www.w3schools.com/js/js_cookies.asp
或更深入、更准确的文档:
https://developer.mozilla.org/en-US/docs/Web/API/Document/cookie
这里有几件事:
function SetCookie() {
var url = window.location.search;
if(url.indexOf('?src=uni') !== -1)
document.cookie="src=uni";
}
1) 使用location.search
来缩小你的范围,不是必须的,但错误的空间较小,
2) 使用!== -1
测试indexOf
方法。 indexOf
returns "-1" 如果找不到匹配项。并且 "0" 如果它在字符串的开头找到匹配项。字符串是 "zero indexed" 这意味着字符串中的第一个字符位于位置“0”。
3) 添加等号 =
以及您的参数名称:src=
.
4) 此外,如果这是您要查找的内容,请使用字符串 "uni",而不是名为 uni
的变量。如果 "src" 可以是各种值,那么我们需要添加更多逻辑来说明这一点。
5) 并且在分配给 document.cookie
时使用 key/value 对,如:key=value
.