Javascript 首次加载页面时显示引导模式
当一个人第一次访问一个页面时(登录我的应用程序后),我试图显示一个引导模式。我想使用该模式提供一个“入门”视频,并提供一个“不再向我显示此内容”复选框,以便访问者在以后登录时可以绕过“入门模式” 通过以下教程,我能够在页面加载时显示模式: 但现在我一直在想如何让它在用户登录后第一次访问页面时才显示出来。(当前在页面刷新等时启动) 我不熟悉javascript和编程,并使用Django Python 2.7.4创建了我的应用程序Javascript 首次加载页面时显示引导模式,javascript,django,twitter-bootstrap,modal-dialog,Javascript,Django,Twitter Bootstrap,Modal Dialog,当一个人第一次访问一个页面时(登录我的应用程序后),我试图显示一个引导模式。我想使用该模式提供一个“入门”视频,并提供一个“不再向我显示此内容”复选框,以便访问者在以后登录时可以绕过“入门模式” 通过以下教程,我能够在页面加载时显示模式: 但现在我一直在想如何让它在用户登录后第一次访问页面时才显示出来。(当前在页面刷新等时启动) 我不熟悉javascript和编程,并使用Django Python 2.7.4创建了我的应用程序 我非常感谢您的时间和专业知识。要做到这一点,您需要使用一种方法来存
我非常感谢您的时间和专业知识。要做到这一点,您需要使用一种方法来存储在网站访问之间持续存在的用户数据,这通常称为
会话。在这种特殊情况下,听起来用户可能没有登录,更具体地说,这被称为匿名会话
有许多选项可用于存储匿名会话。最快和最简单的是使用,但其他选项包括基于文件的会话、Html5存储或数据库
根据你所写的,我想说饼干可能是你最好的解决方案
而且,正如您所料,Django内置了一些功能,可以轻松处理cookie。我建议研究一下,我发现这是非常容易理解和学习的,看看如何实现这一点
如果您对在Django中使用cookies(或匿名会话)有任何更具体的问题,请告诉我,我会尽力帮助您。好的,您可以使用
用于存储发生的操作,因此它是持久的,或者您可以使用一个名为show
的示例,并在开始时将其设置为false,在显示模式后,您只需将其设置为true。使用Django肯定有办法做到这一点。例如,您可以存储用户的IP,并跟踪该IP上的用户是否点击过“不再显示此内容”按钮。这将是唯一真正能够确定你没有向要求不看视频的人播放视频的方法。在前端,用户可以随时清除自己的cookie或本地存储,这样前端跟踪就会丢失
也就是说,这里有一个实际的例子,因为您提到了对JavaScript是新手:
// When the user clicks the button...
localStorage.setItem('no_display', 'true');
// When a user visits the page...
var no_display = localStorage.getItem('no_display');
if (no_display !== 'true') {
display_the_modal();
}
您可以将jquery.cookies.js与modal.js结合使用,只加载页面一次,然后设置到期cookie
<script src="/path/to/jquery.cookie.js"></script>
<script>
$(document).ready(function() {
if ($.cookie(‘pop’) == null) {
$(‘#myModal’).modal(‘show’);
$.cookie(‘pop’, ’7');
}
});
</script>
$(文档).ready(函数(){
if($.cookie('pop')==null){
$('myModal').modal('show');
$.cookie('pop','7');
}
});
您可以在本教程中找到更多详细信息:
您可以尝试此可运行代码-
$(文档).ready(函数(){
if($.cookie('pop')==null){
$('myModal').modal('show');
$.cookie('pop','7');
}
});代码>
模态示例
开放模态
&时代;
模态头
模态中的一些文本
接近
首次页面加载时显示引导模式
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery-cookie/1.4.0/jquery.cookie.min.js">
</script>
<script type="text/javascript">
$(document).ready(function() {
if ($.cookie('pop') == null) {
$('#myModal').modal('show');
$.cookie('pop', '1');
}
});
</script>
$(文档).ready(函数(){
if($.cookie('pop')==null){
$('myModal').modal('show');
$.cookie('pop','1');
}
});
您可以设置隐藏模式的天数您可以使用此脚本,我希望它能起作用:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js">
</script>
<script type="text/javascript">
$(document).ready(function() {
if (sessionStorage.getItem('#myModal') !== 'true') {
$('#myModal').modal('show');
sessionStorage.setItem('#myModal','true');
}
});
</script>
$(文档).ready(函数(){
if(sessionStorage.getItem('#myModal')!='true'){
$('myModal').modal('show');
setItem('myModal','true');
}
});
您有几种方法,httpcookies
或者数据库中的一个字段第一次显示
之类的内容。关于cookies
的解释或使用数据库实现这一点的方法对于一个问题的答案来说是很长的。特别是如果你没有提供如何定义你的模型,但是你应该阅读它们。完美,我很感激你的反馈再次检查你的代码!您在“和”中有错误,要保存状态的部件在何处不能再次加载/显示?答案已修复,请立即重试