私はその中にID "res"を持つ隠しdivを持っています.Cookieが設定されている場合はユーザー名をエコーし ます.それ以外の場合はnouserをエコーします
そして、私はこのコードを頭に持っており、ファンシーボックスを開いて製品を購入するユーザーが存在するかどうかを確認します。そうでない場合、ユーザーは登録を求められます
$("a.add_to_cart").click(function (e) {
e.preventDefault();
var res = $("div#res").text();
if (res == "nouser") {
noty({
"text": "you must login first",
"layout": "center",
"type": "error",
"textAlign": "center",
"easing": "swing",
"animateOpen": {
"height": "toggle"
},
"modal": "true",
"animateClose": {
"height": "toggle"
},
"speed": "500",
"timeout": "2000",
"closable": true,
onClose: function () {},
"closeOnSelfClick": true
});
} else {
var pro_name = $(this).attr("pro_name");
var pro_id = $(this).attr("id");
var qst = "?pro=" + pro_id;
var ajax = false;
ajax = new XMLHttpRequest();
ajax.open("get", "ajax/check_exists.php" + qst);
ajax.onreadystatechange = function () {
if (ajax.readyState == 4 && ajax.status == 200) {
var result = ajax.responseText;
if (result == 'in cart') {
noty({
"text": "product already exists in the cart",
"layout": "center",
"type": "error",
"textAlign": "center",
"easing": "swing",
"animateOpen": {
"height": "toggle"
},
"modal": "true",
"animateClose": {
"height": "toggle"
},
"speed": "500",
"timeout": "2000",
"closable": true,
onClose: function () {},
"closeOnSelfClick": true
});
} else {
$("a.add_to_cart[id=" + pro_id + "]").unbind("click");
var qst1 = "?pro=" + pro_id;
$("#proID").text(pro_id);
var ajax1 = false;
ajax1 = new XMLHttpRequest();
ajax1.open("get", "ajax/get_submit.php" + qst1);
ajax1.onreadystatechange = function () {
if (ajax1.readyState == 4 && ajax1.status == 200) {
$("#addDiv").html(ajax1.responseText);
}
}
ajax1.send(null);
$("a[id=" + pro_id + "]").fancybox({
'transitionIn': 'elastic',
'transitionOut': 'elastic'
}).click();
}
}
}
ajax.send(null);
}
});
firebug を使用すると、div に nouser が含まれていることがわかりますが、fancybox には jquery if 条件の何が問題なのかが表示され続けます。