Safari下弹窗问题的解决办法

 

Ipad下使用的是Safari浏览器,在ie下的弹窗代码在该浏览器下无法执行。在已有的项目中如果需要在ipad下使用,必须对js进行修改。但如果是已开发的项目,最好的办法是在最大限度上维持原有的代码。所以最好是采用弹页面的方式来实现div的效果。

  从网上找到别人的博客查到到这样的一种js现成的解决方案,名字叫subModal,
   相关的文件有三个,一个javascript文件,两个样式文件。当然样式文件需要的话是要使用它的样式。三个文件的名称分别是:
  subModal.js
  submodal.css
  submodalstyle.css  
  
  使用到的方法有:
   window.parent.hidePopWin(true); //加true应该是可以返回参数
   window.parent.hidePopWin();

 找开窗口的方法:
 showPopWin(contentpath+'/deptsjtoSelect.action', 630, 600, getReturnValue); //打开窗口的方法和ie下的弹出窗口有点类同,所以改动相对较少
 //第四个参数代表回调方法 用于获取返回参数,写法如下:
 function getReturnValue(result){
  alert(result);
  }

最后一点要注意的:当时打开窗口的时候有个404错误,原来是少了个load页面。还需要在web目录下加个loading.html。里面添加的标题可以显示在弹出窗口之上。
 
 
 
 
 
官方给出的说法:
Where it works
  • IE 6+
  • FireFox 0.9+
  • Safari
  • Opera 7+
Opera 7 works in a hacked fashion. Since Opera’s css support doesn’t include opacity I’m using a 24 bit transparent PNG file for the demo. If you don’t care about Opera you can comment this out and it will still work in FireFox, IE, and Safari. I like that method better since you have full control over the mask color and opacity right from the CSS file.
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章