我想显示一个 div 和一个在页面重新加载后单击的事件链接。最初,类 active 被调用到第一个链接,并且 div 被隐藏。
我检查了我能想到的所有内容,但没有得到解决方案,因为我的代码在页面重新加载后无法工作。
请查看 html 和 jquery 代码:
<div class="sub-cols" style="display:none;">
<div class="wraper-berkowits">
<a class="active" href="<?php echo Mage::getBaseUrl() ?>products-for-sale/attachments.html">Attachments</a>
<a href="<?php echo Mage::getBaseUrl() ?>products-for-sale/removal.html">Removal</a></li>
<a href="<?php echo Mage::getBaseUrl() ?>products-for-sale/hair-loss-store.html">Hair Loss</a></li>
<a href="<?php echo Mage::getBaseUrl() ?>products-for-sale/care-maintenance.html">Care & maintenance </a>
</div>
</div>
jQuery(document).ready(function() {
jQuery('.menu:first-child').addClass('first');
jQuery('li.last a').click(function() {
jQuery('.sub-cols').show();
return false;
});
jQuery(".sub-cols a").click(function () {
jQuery(this).addClass('active').siblings().removeClass('active');
});
});
请检查上面的代码并告诉我如何获得所需的结果。
最佳答案
根据您的评论,现在更好地理解了这个问题 因为您的需要是即使在页面重新加载后也能重新获得链接的状态。 我可以为您提供实现它的提示
有两种方法 - 1)你可以在php中的$_SESSION来存储点击的链接,并可以使用jquery显示它
2) 仅使用 JavaScript - 使用 window.localStorage – 存储没有过期日期的数据
当您需要设置应反射(reflect)在下一页中的变量时,请使用:
var someVarName = "value";
localStorage.setItem("someVarName", someVarName);
在你的代码中你可以做这样的事情
jQuery(".sub-cols a").click(function () {
localStorage.setItem("someVarName", jQuery(this).text());
jQuery(this).addClass('active').siblings().removeClass('active');
});
jQuery(".sub-cols").show();
在任何页面(例如页面加载时),获取如下:
var someVarName = localStorage.getItem("someVarName");
.getItem()
将返回 null
或存储的值。
对于您的示例,您可以像这样使用
if(localStorage.getItem("someVarName")!=null){
$('a').filter(function(){
return this.innerHTML == localStorage.getItem("someVarName");
}).css({background:"#F00"});
}
我提供了更新的演示 - http://jsfiddle.net/bvqnzuwa/3/ 要测试它,请单击任何链接,然后重新加载页面。即使在页面重新加载后,您也会在单击的链接上看到背景颜色。
关于javascript - 如何在页面重新加载jquery后显示div和当前事件链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33580099/