ポイント
- リファラーの取得
- クッキーの取得(パースするのが少し煩わしい)
- encodeURIComponent.encode()
- 高階関数(値に応じて保存するかどうかを判断する)
/* conversion tracking */
var CONVERSION_COOKIE_NAME = 'ones_style_ref';
// get cookie
function myGetCookie(name){
var regexp = new RegExp('; ' + name + '=([^;]*);');
var match = ('; ' + document.cookie + ';').match(regexp);
if(match){
return match[1];
}
}
// set cookie
function mySetCookie(key, val, validFunc){
var flg = true;
if(validFunc){
if(!validFunc(val)){
flg = false;
}
}
if(flg){
document.cookie= key + '=' + encodeURIComponent(val) + ';path=/;';
}
}
// exec.
if($('body#form-idx').length){
var c;
if(c = myGetCookie(CONVERSION_COOKIE_NAME)){
$('form').append('');
}
} else {
if(document.referrer) {
mySetCookie(CONVERSION_COOKIE_NAME,
document.referrer,
function(val){
return (location.hostname.indexOf(val, 0) < 0);
});
}
}
参考
0 件のコメント:
コメントを投稿