Javascript -在一个页面上打开窗口,然后在另一个页面上关闭它
Javascript - open window on one page, then close it on another
让我解释一下我的场景。我有一个播放/停止对CSS按钮在我的脚。我不想使用框架。当我在当前页面(第1页)上按下播放键时,一个弹出窗口打开,jplayer
开始播放音乐。当我按下close时,由于我保存了初始打开时的窗口值,窗口关闭了。
现在,这是我的问题:假设用户移动到主站点的另一个页面(第2页)-弹出框仍然在播放(这不是问题,这就是我的意图)。但是我希望用户能够在第2页上按停止并杀死在第1页创建的窗口。
我尝试使用HTML5本地存储,但它没有工作-奇怪的事情:存储在HTML5存储的对象,是类型的窗口-所以它被存储。仍然无法关闭。
有没有人曾经这样做过,或者知道一个绕过它的方法?以下是我的代码(不能工作):
$(document).ready(function () {
var win;
$('#playButton').click(function () {
win = window.open('Player.html',
"popupWindow",
"width=265,height=360,scrollbars=yes");
$(this).attr('class', 'active');
$('#stopButton').attr('class', 'none');
localStorage.setItem("player", win);
});
$('#stopButton').click(function () {
$(this).attr('class', 'active');
$('#playButton').attr('class', 'none');
win = localStorage.getItem("player");
win.close();
});
});
下面是我的评论:将你的页面代码改为:
$(document).ready(function () {
$('#playButton').click(function () {
window.open('Player.html', "popupWindow", "width=265,height=360,scrollbars=yes");
$(this).attr('class', 'active');
$('#stopButton').attr('class', 'none');
});
$('#stopButton').click(function () {
$(this).attr('class', 'active');
$('#playButton').attr('class', 'none');
localStorage.setItem("player", false);
});
});
并将此添加到弹出窗口的代码中:
setInterval(function(){
if(localStorage.getItem("player") == false)
window.close();
}, 1000);
SetInterval将每1000毫秒运行一次内部匿名函数,它检查播放器的值,如果设置为false,它将关闭自己。
相关文章:
- 如何在JQuery函数中定义一个值,然后调用另一个函数并使用该值
- 转到另一个页面,然后立即触发ScrollTo
- 如何将src的值放在一个输入中,然后在另一个页面上显示它
- 在输入字段中选择一个值,然后用相应的数据填充另一个字段
- 如何拆分一个字符串,然后将它们与另一个字符串匹配
- 如何自动从一个页面移动到另一个页面,然后回到 html 表格中分页的第一页
- 如何确保我的值已添加并存在,然后运行另一个代码jquery
- 从select中选择一个选项,然后使用Codeigniter在另一个选择框上显示数据
- 使用JavaScript,我可以上传一个word文件并使用.replaces然后另存为新文档吗
- 我是否可以在单击特定图标时更改地图标记图标,然后在单击另一个图标时切换,等等
- 将twitter引导程序popover设置为在某个事件之后隐藏,然后在另一个事件之后显示
- 我可以在蜘蛛网的高图表中添加两个轴,然后单击x轴标签导航到另一个页面吗
- 将Javascript发布到PHP,然后在另一个javascript中检索
- AngularJS如何获取一个数组,该数组将数字添加到函数中的元素,然后用另一个函数分散其注意力
- 从文本区域中获取一个值,然后将其粘贴到另一个窗口中
- 如何将一个函数(委托?)作为参数传递给Javascript中的另一个函数,然后使用它
- 如何使用画布更改图像的不透明度,然后将其加载到画布中的另一个图像上?-HTML
- JQuery attr 选择器到字符串,存储为变量,然后传递到另一个 JQuery 选择器
- 将一个结果集除以另一个结果集,然后显示答案
- SVG:转换,动画,然后另一个转换没有;不起作用