Javascript - 带有 cookie 检查器的延迟按钮
Javascript - delayed button with cookie checker
我正在尝试做一些我力所能及的事情。我在网站上使用之前的脚本在视频时间 1 分钟后显示 Button。因此,当视频播放器到达 01:00 时,会显示该按钮,然后将其保存到 cookie 中,这样您下次访问该页面时,它就会立即显示,您无需再等待 1 分钟即可显示该按钮.
但现在我正在尝试将此计时器连接到网站时间,而不是视频时间,我很迷茫。
索引页中的函数调用:
<script type="text/javascript">
var minuten = 0;
var sekunden = 5;
//==========================
cartt(minuten, sekunden);
</script>
这是视频时间的原码:
$("#video").fitVids();
var video = new Vimeo.Player($('#video iframe'));
function cart(minuten, sekunden) {
var button = $('.cart');
var seconds = (minuten * 60) + sekunden;
var url = window.location.pathname;
url = url.split("/");
var seite = url[url.length -1];
var cookie_string = "cartbutton_" + seite + "=show";
var cookieIsSet = function() { return document.cookie.indexOf(cookie_string) != -1; };
if(!cookieIsSet()) {
button.hide();
video.on('timeupdate', function(data) {
if (data.seconds >= seconds && !cookieIsSet()) {
button.show();
document.cookie = cookie_string + "; max-age=259200";
}
});
}
}
这就是我尝试获取网站时间的方式:
window.onload=function(){
var start=Date.now();
}
function cartt(minuten, sekunden) {
var button = $('.cartt');
var seconds = (minuten * 60) + sekunden;
document.write(seconds);
var url = window.location.pathname;
url = url.split("/");
var seite = url[url.length -1];
var cookie_string = "cartbutton_" + seite + "=show";
var cookieIsSet = function() {
return document.cookie.indexOf(cookie_string) != -1;
};
if(!cookieIsSet()) {
start.on(function(data) {
if (data.seconds >= seconds && !cookieIsSet()) {
button.show();
document.cookie = cookie_string + "; max-age=259200";
}
});
button.hide();
}
}
(代表OP发表).
这个是我自己弄的,因为没有答案而且我在网上找不到这个答案,我会分享我的解决方案。
在索引页上:
<script type="text/javascript">
var videoShow = getCookie('video-show');
jQuery(document).ready(function() {
if(videoShow) {
jQuery('.cartt').show();
}
else {
setTimeout(
function(){
jQuery('.cartt').show();
setCookie('video-show', 1, 365);
}, 5000 );
}
});
</script>
脚本:
function setCookie(c_name,value,expiredays)
{
var exdate=new Date();
var dpath = '/';
exdate.setDate(exdate.getDate()+expiredays);
document.cookie=c_name+ "=" +escape(value)+
((expiredays==null) ? "" : ";expires="+exdate.toUTCString())+";path="+dpath;
}
function getCookie(c_name)
{
if (document.cookie.length>0)
{
c_start=document.cookie.indexOf(c_name + "=");
if (c_start!=-1)
{
c_start=c_start + c_name.length+1;
c_end=document.cookie.indexOf(";",c_start);
if (c_end==-1) c_end=document.cookie.length;
return unescape(document.cookie.substring(c_start,c_end));
}
}
return "";
}
我正在尝试做一些我力所能及的事情。我在网站上使用之前的脚本在视频时间 1 分钟后显示 Button。因此,当视频播放器到达 01:00 时,会显示该按钮,然后将其保存到 cookie 中,这样您下次访问该页面时,它就会立即显示,您无需再等待 1 分钟即可显示该按钮.
但现在我正在尝试将此计时器连接到网站时间,而不是视频时间,我很迷茫。
索引页中的函数调用:
<script type="text/javascript">
var minuten = 0;
var sekunden = 5;
//==========================
cartt(minuten, sekunden);
</script>
这是视频时间的原码:
$("#video").fitVids();
var video = new Vimeo.Player($('#video iframe'));
function cart(minuten, sekunden) {
var button = $('.cart');
var seconds = (minuten * 60) + sekunden;
var url = window.location.pathname;
url = url.split("/");
var seite = url[url.length -1];
var cookie_string = "cartbutton_" + seite + "=show";
var cookieIsSet = function() { return document.cookie.indexOf(cookie_string) != -1; };
if(!cookieIsSet()) {
button.hide();
video.on('timeupdate', function(data) {
if (data.seconds >= seconds && !cookieIsSet()) {
button.show();
document.cookie = cookie_string + "; max-age=259200";
}
});
}
}
这就是我尝试获取网站时间的方式:
window.onload=function(){
var start=Date.now();
}
function cartt(minuten, sekunden) {
var button = $('.cartt');
var seconds = (minuten * 60) + sekunden;
document.write(seconds);
var url = window.location.pathname;
url = url.split("/");
var seite = url[url.length -1];
var cookie_string = "cartbutton_" + seite + "=show";
var cookieIsSet = function() {
return document.cookie.indexOf(cookie_string) != -1;
};
if(!cookieIsSet()) {
start.on(function(data) {
if (data.seconds >= seconds && !cookieIsSet()) {
button.show();
document.cookie = cookie_string + "; max-age=259200";
}
});
button.hide();
}
}
(代表OP发表).
这个是我自己弄的,因为没有答案而且我在网上找不到这个答案,我会分享我的解决方案。
在索引页上:
<script type="text/javascript">
var videoShow = getCookie('video-show');
jQuery(document).ready(function() {
if(videoShow) {
jQuery('.cartt').show();
}
else {
setTimeout(
function(){
jQuery('.cartt').show();
setCookie('video-show', 1, 365);
}, 5000 );
}
});
</script>
脚本:
function setCookie(c_name,value,expiredays)
{
var exdate=new Date();
var dpath = '/';
exdate.setDate(exdate.getDate()+expiredays);
document.cookie=c_name+ "=" +escape(value)+
((expiredays==null) ? "" : ";expires="+exdate.toUTCString())+";path="+dpath;
}
function getCookie(c_name)
{
if (document.cookie.length>0)
{
c_start=document.cookie.indexOf(c_name + "=");
if (c_start!=-1)
{
c_start=c_start + c_name.length+1;
c_end=document.cookie.indexOf(";",c_start);
if (c_end==-1) c_end=document.cookie.length;
return unescape(document.cookie.substring(c_start,c_end));
}
}
return "";
}