即使在页面重新加载后也显示div

时间:2015-08-29 20:14:03

标签: javascript html5

点击按钮,我使用

显示div
preg_match('/<title>([^>]*)<\/title>/si', $contents, $match );

但是当重新加载页面时,这个div会再次消失。我希望div保持不变,直到我用document.getElementById('message-box').style.display="block"; 按钮明确关闭它。我怎么能这样做?

3 个答案:

答案 0 :(得分:3)

我不会在这里编写代码,因为它会让开发人员通过复制/粘贴而变得懒惰,但我会告诉你如何解决它。

这里的问题是,刷新页面,并删除该div的状态,因为它不是持久状态。

对此的解决方案是cookies或localStorage,如果按钮关闭,您可以在其中设置变量。

希望这有帮助。

答案 1 :(得分:2)

这个简单的例子将完成您想要实现的目标

HTML:

<div class='hidden' id='hiddenDiv'>NOT SHOWN UNTIL YOU CLICK IT!! <span>
        <input type='button' value='X' onclick='closeClick()'>
    </span>

</div>
<input type='button' value='show me the div' onclick='openClick()' />

JS:

function openClick() {
    document.getElementById('hiddenDiv').style.display = "block";
    sessionStorage.setItem('clicked', true);
}

function closeClick() {
    document.getElementById('hiddenDiv').style.display = "none";
    sessionStorage.removeItem('clicked');
}

window.onload = function () {
    var data = sessionStorage.getItem('clicked');
    if (data == 'true') {
        openClick();
    }
};

fiddle example

答案 2 :(得分:0)

试试这个:

window.onload = function() {document.getElementById('message-box').style.display="block";};