Javascript Chrome/Safari(webkit)中的JQuery Overlay无法进行更改
在谷歌上花了几天时间试图找到答案后,我开始求助于那些我应该从他们开始的人。我已经安装并正在使用覆盖非常成功。问题在于能否对覆盖视图进行jQuery更改。它在IE和FF中工作完美,但在Chrome或Safari(webkit)中不起作用。我意识到webkit中内置了安全保护,但视图与网站的其余部分位于同一服务器上。我在做什么?有没有关于绕过这些证券的提示?任何提示都会有帮助。如果您已成功完成此操作,请包含示例代码。如果可能的话,我需要今天完成这件事。此示例是所用代码的摘录。 非常感谢。 拉尔夫Javascript Chrome/Safari(webkit)中的JQuery Overlay无法进行更改,javascript,jquery,overlay,Javascript,Jquery,Overlay,在谷歌上花了几天时间试图找到答案后,我开始求助于那些我应该从他们开始的人。我已经安装并正在使用覆盖非常成功。问题在于能否对覆盖视图进行jQuery更改。它在IE和FF中工作完美,但在Chrome或Safari(webkit)中不起作用。我意识到webkit中内置了安全保护,但视图与网站的其余部分位于同一服务器上。我在做什么?有没有关于绕过这些证券的提示?任何提示都会有帮助。如果您已成功完成此操作,请包含示例代码。如果可能的话,我需要今天完成这件事。此示例是所用代码的摘录。 非常感谢。 拉尔夫 在
在Safari 3+和Chrome(基于WebKit的浏览器)中使用外部样式表以防止不可预知的行为时,不要使用Apple effect on document.ready()事件。当您删除
效果:'apple',
时,您将看到它在safari和chrome中工作
该网站建议两种方法来解决苹果效应:
- 改为使用$(window).load()。这肯定会在样式表加载后执行
- 直接在页面上定义覆盖样式,或为元素内联定义覆盖样式
var triggers = jQuery("input[rel]").overlay({
mask: {
color: '#ebecff',
loadSpeed: 200,
opacity: 0.9
},
effect: 'apple',
onBeforeLoad: function() {
// grab wrapper element inside content
var wrap = this.getOverlay().find(".contentWrap");
var link = "index.php?page=account.billing&option=com_virtuemart";
//Add the link and style attributes to the basic iframe
//jQuery(theframe).attr({ src: link, style: 'height:650px; width:760px; border:none;' });
jQuery(theframe).attr({ src: link, style: 'height:700px; width:840px; border:none;' });
//Write the iframe into the wrap
wrap.html(theframe);
},
onLoad: function(){
var inFrame = this.getOverlay().find("#innerFrame");
jQuery(inFrame).contents().find('form').attr('onsubmit','window.parent.CloseOverlayFromIframe();');
}
});