我正在使用 jQuery Cookie 来存储来自单击元素(以标志图像作为背景的链接元素)的值,一旦单击,它将在不同的目标位置更改 HTML。
例如,下面我尝试定位a.flag
,然后设置一个定位为 的cookie a.nturl
,然后在其中找到第一个img
标签并输出该src
图像元素的:
$("a.flag").click(function(event) {
location.reload();
$.cookie("language_name", event.target.id, { path: "/" });
$.cookie("flag_url", $("a.nturl").find("img").attr("src"), {path: "/" });
});
然后是检索 cookie 并以 HTML 格式输出它们的函数:
$(function() {
var language_name = $.cookie("language_name");
var flag_url = $.cookie("flag_url");
if (language_name === "English"){
$("div.selected").html( "<a onclick=\"return false;\" href=\"#\"><span><img src=\"" + flag_url + "\" alt=\"English\" height=\"16\" width=\"16\"></span>" + language_name + "</a>");
}
出于某种原因,flag_url
cookie 没有正确存储值 - 它当前仅存储src
来自a.nturl
.
当使用以下代码在目标本身内执行操作时,下面的代码似乎效果很好 $(this)
:
$("a.nturl").click(function(event) {
location.reload();
$.cookie("language_name", $(this).attr("title"), { path: "/" });
$.cookie("flag_url", $(this).find("img").attr("src"), {path: "/" });
});