当页面加载时,我的代码读取LocalStorage并检索保存的值。然后它将该值附加到页面内的DIV元素。
到目前为止它可行,但点击 sort-link-css 元素不会触发脚本。如果我删除附加的DIV并使用原始代码,那么所有脚本都可以正常工作。
HTML开头:
<div id="thisclone">
// Lot of code
</div>
在LocalStorage中设置变量:
$('.region-checkboxes').click(function(e) {
var menu = $("#thisclone").html();
localStorage.menu = menu
});
保存在LocalStorage中的HTML:
<div class="row select-row" style="margin-bottom:5px !important;">
<div class="sort-link-css" id="to-hide" style="background: url("/assets/blue-up.png") 93px 11px no-repeat;">
<a class="sort_link desc" data-method="get" data-remote="true" href="http://www..eu/lv?q%5Bs%5D=height+asc">AUGUMS</a>
<span class="num">1</span>
</div>
<div class="sort-link-css" style="background: url("/assets/down.png") 93px 11px no-repeat;">
<a class="sort_link" data-method="get" data-remote="true" href="/lv?q%5Bs%5D=age+desc">VECUMS</a>
<span class="num">0</span>
</div>
<div class="sort-link-css" style="background: url("/assets/down.png") 93px 11px no-repeat;">
<a class="sort_link" data-method="get" data-remote="true" href="/lv?q%5Bs%5D=votes_for.size+desc">PATĪK</a>
<span class="num">0</span>
</div>
</div>
然后在页面顶部我正在阅读localStorage并将其附加到DIV:
<script>
var fromstorage = localStorage.getItem('menu');
$(fromstorage).appendTo(".menu-dupl");
</script>
视觉上,新添加的div看起来与起始div完全相同。但从功能上讲,简单的脚本不再起作用了。
脚本示例:
$('.sort-link-css > a').click(function(e) {
alert("Test");
});
这只是一个不起作用的脚本。但基本上,与新附加的div关联的每个脚本都不再起作用。如果我删除新附加的div并使用原始div,脚本将再次开始工作。
我试过了:
var fromstorage = localStorage.getItem('menu');
$(fromstorage).clone().appendTo( ".menu-dupl" );
但仍然是同样的问题。
提前感谢您的帮助。
答案 0 :(得分:1)
在简要回顾您的问题之后,我发现了以下内容:
$('.sort-link-css > a').click(function() { alert("Test") })
$('sort-link-css > a)
时,您已声明要将此事件与<a></a>
.sort-link-css
元素绑定
$(".sort-link-css > a")