Javascript 如何在twitter引导中只显示一次模式?
这是我现在的代码:Javascript 如何在twitter引导中只显示一次模式?,javascript,twitter-bootstrap,Javascript,Twitter Bootstrap,这是我现在的代码: <script type="text/javascript"> $(document).ready(function() { if($.cookie('msg') == 0) { $('#myModal').modal('show'); $.cookie('msg', 1); } }); <
<script type="text/javascript">
$(document).ready(function() {
if($.cookie('msg') == 0)
{
$('#myModal').modal('show');
$.cookie('msg', 1);
}
});
</script>
$(文档).ready(函数(){
如果($.cookie('msg')==0)
{
$('myModal').modal('show');
$.cookie('msg',1);
}
});
在页面加载时,模型会显示,但当我刷新时,它会继续显示应该只显示一次的内容。$.cookie来自
更新:
这起作用了:由于某种原因,“隐藏”不起作用
<script type="text/javascript">
$(document).ready(function() {
if($.cookie('msg') == null)
{
$('#myModal').modal('show');
$.cookie('msg', 'str');
}
else
{
$("div#myModal.modal").css('display','none');
}
});
</script>
$(文档).ready(函数(){
如果($.cookie('msg')==null)
{
$('myModal').modal('show');
$.cookie('msg','str');
}
其他的
{
$(“div#myModal.modal”).css('display','none');
}
});
从库的外观来看,值应该是字符串。尝试:
<script type="text/javascript">
$(document).ready(function() {
if($.cookie('msg') == null)
{
$('#myModal').modal('show');
$.cookie('msg', '1');
}
});
</script>
$(文档).ready(函数(){
如果($.cookie('msg')==null)
{
$('myModal').modal('show');
$.cookie('msg','1');
}
});
@SarmenB的更新在大多数浏览器(FF、IE9)中都能正常工作,但在IE8中却不能
我修改了他的更新解决方案,让它在IE8中工作
这就是@SarmenB的解决方案:
<script type="text/javascript">
$(document).ready(function() {
if($.cookie('msg') == null)
{
$('#myModal').modal('show');
$.cookie('msg', 'str');
}
else
{
$("div#myModal.modal").css('display','none');
}
});
</script>
$(文档).ready(函数(){
如果($.cookie('msg')==null)
{
$('myModal').modal('show');
$.cookie('msg','str');
}
其他的
{
$(“div#myModal.modal”).css('display','none');
}
});
这是我提出的改进解决方案,也适用于IE8:
<script type="text/javascript">
$(document).ready(function() {
if($.cookie('msg') != null && $.cookie('msg') != "")
{
$("div#myModal.modal, .modal-backdrop").hide();
}
else
{
$('#myModal').modal('show');
$.cookie('msg', 'str');
}
});
</script>
$(文档).ready(函数(){
如果($.cookie('msg')!=null&&$.cookie('msg')!=“”)
{
$(“div#myModal.modal,.modal background”).hide();
}
其他的
{
$('myModal').modal('show');
$.cookie('msg','str');
}
});
基本上,为了让它在IE8中工作,我必须反转if/else语句中的内容。您是否尝试将该值设置为字符串?是的,我设置了$.cookie('msg')!='隐藏“)。。。然后显示模式,然后我将msg cookie设置为hide值。然后,刷新后模式继续显示检查我的解决方案是否有效。如果没有,您能制作一个JSFIDLE吗?您的解决方案不起作用,但我尝试的是将modal设置为“隐藏”而不是“显示”,并且看到它也不起作用。不知道为什么。所以我刚才做的是检查cookie是否已设置,是否已使用css手动隐藏,否则将显示它。这起作用了。