重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
现在建议不要使用showModalDialog和showModelessDialog,这个只在IE中才有效,兼容性很不好,建议使用open方法,可参考我的博客
10年积累的成都做网站、成都网站制作经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先做网站后付款的网站建设流程,更有那坡免费网站建设让你可以放心的选择与我们合作。
你首先要检查你的CSS代码,因为模态窗口主要是需要写好兼容的CSS代码段儿。还有你的模态窗口初始化是否做了什么特殊的处理,你可以先将这些处理注释掉,然后试试看空的窗口显示是否正常,一次来判断js代码是否存在效率或是不兼容的问题。
最好不要用
Response.Write("script type='text/javascript'window.showModalDialog('ModeDialog.aspx','','dialogWidth=300px;dialogHeight=400px;resizable:yes');/script");
因为Response.Write输出来的会破坏页面,如果你要是想实现那个效果用这个:
this.Page.ClientScript.RegisterStartupScript("typeof(string)","","脚本",true);
INPUT TYPE="button" value="Display Modeless Dialog" [i]onclick[/i]="callDialog()"
变成
INPUT TYPE="button" value="Display Modeless Dialog" onclick="callDialog()"
加了[i] 找不到click方法了
按理论应该是打开模态窗口后,两首音乐都在播放,不存在这个放那个不放的问题。按下面改。
embed
id="mp"
src="1.mp3"
hidden=false
loop=true
input
type="button"
value="New"
onclick="showd()"
script
function
showd()
{
mp.pause();
window.showModalDialog('1.html','','dialogWidth:200px;dialogHeight:100px;help:no;Scroll=no;status=no;center=yes')
mp.Play();
}
/script
模态窗口打开前暂停原背景音乐,关闭后继续。
----------------------------------------------
我用了七种浏览器一一测试,结果如下:
IE7,IE8(TT,360,马桶其实国内的浏览器都是IE内核)一切正常。
Opera
不支持showModalDialog不说了。
FF
需要安装Quick
Time
Player插件才可播放,但这个插件又不支持pause或PLAY方法,所以也失败。
Safari和chrome也是一个内核,测试结果它们不认
embed
标签。
哈哈,很郁闷吧,还是微软强大,让那些整天骂微软IE不标准,整天为其它浏览器叫屈的人见鬼去吧,虽然IE“不标准”,但IE有太多其它浏览器没有的功能了,楼主想好好实现统一标准的媒体播放,还是等HTML5标准下来再说吧,呵呵,题外话。
我这里测试360,TT,IE7,IE8都可以正常播放,楼主不能放可能你的“模态窗口用HTML和VBScript(抄的)”有问题吧。
你可以咋点击SubmitForm方法里面调起模态框,然后模态框里面的两个按钮定义两个方法,一个确认一个取消,然后在确认方法里面取提交你的form;
或者在模态框上定义一个方法,通过传参去判断是确认还是取消,然后在确认方法里面取提交你的form;