框架式播放器的动态开关
[分享] 框架式播放器的动态开关
说在前面:
这里所说的动态开关是针对使用了框架页音乐播放的。其音乐开关的目的是为了实现我们在浏览博客任意页面时的播放器打开与关闭。
我们使用框架页为博客添加音乐播放器是为了实现在浏览博客时,进行页面切换时音乐播放不会中断。为此有些博友为博客主页增加了“音乐版”与“非音乐版”的选择,或在主页增加了播放器的开关选项。但我发现在点击“打开播放器”或“关闭播放器”时会自动返回到博客主页,从而影响了我们正常的浏览;并且多次点击“打开播放器”会在面出现多个音乐播放器。
为此我写了下面的代码段,用以实现在任意页面对播放器打开与关闭的控制。从任何页面打开和开闭播放器都不会出现返回到其它页面(主要为主页),不会再影响我们博客的浏览。
一、首先重建博客首页文件,命名为“index.asp”代码如下:
<html>
<head>
<title>网站名称</title>
<meta http-equiv="Content-Type" c>
<style type="text/css">
frameset {
margin:0px;
padding:0px;
border:0px;
background-color:buttonface;
}
</style>
</head>
<frameset rows="0,*" frameborder="0" framespacing="0" name="abc">
<frame src="" name="pamp" scrolling="NO" noresize >
<frame src="default.asp" name="main" scrolling="YES">
</frameset>
<noframes><META HTTP-EQUIV="refresh" C></noframes>
</html>
代码结束。
以上代码除 网站名称 可以自行修改外,其它的请不要修改;其 default.asp 是 PJBbog 的默认首页。如果播放器是在页面的下方,可将代码:
<frameset rows="0,*" frameborder="0" framespacing="0" name="abc">
<frame src="" name="pamp" scrolling="NO" noresize >
<frame src="default.asp" name="main" scrolling="YES">
</frameset>
替换为:
<frameset rows="*,0" frameborder="0" framespacing="0" name="abc">
<frame src="default.asp" name="main" scrolling="YES">
<frame src="" name="pamp" scrolling="NO" noresize >
</frameset>
二、为博客增加播放器的“开/关”切换。
打开博客然后在的后台管理中新建一个“侧边模块”,命名为“播放器开关”,编辑其HTML,其内容为:
<script type="text/javascript">
function ChangeFrames(obj){
if (obj==0){
var fs = top.document.getElementById("abc");
fs.rows = "8,*";
}
else
{
var fs = top.document.getElementById("abc");
fs.rows = "0,*";
}
}
</script>
<a class=sideA onclick="javascript:ChangeFrames(0);" href="xxx.htm" target="pamp" >打开播放器</a>
<a class=sideA onclick="javascript:ChangeFrames(1);" href="" target="pamp" >关闭播放器</a>
代码结束。
其中的“8”是你的横条式播放器的高度,而“xxx.htm”则是播放器页面,两处可自行修改。如果你的播放器是在页面的下方,可将代码:
function ChangeFrames(obj){
if (obj==0){
var fs = top.document.getElementById("abc");
fs.rows = "8,*";FrameTop=true;
}
else
{
var fs = top.document.getElementById("abc");
fs.rows = "0,*";FrameTop=false;
}
}
修改为:
function ChangeFrames(obj){
if (obj==0){
var fs = top.document.getElementById("abc");
fs.rows = "*,8"
相关新闻>>
- 发表评论
-
- 最新评论 更多>>