jQuery代码仅在硬刷新时触发?

时间:2012-11-07 22:18:19

标签: javascript jquery syntax-error facebook-iframe page-refresh

Facebook注册插件的XFBML版本仅加载HTTPS。我需要它来加载HTTP,所以我的表单不会调用域之间的安全错误不匹配。

我写了这段代码来获取SRC并用HTTPS重写它

在第一次加载时效果很好,但是在Chrome和Safari上它只会在第一次加载时进行HARD刷新。它不会加载标准重新加载或按地址栏上的“输入”。这是代码

$(window).load(function () {
          // Replace HTTPS with HTTP when frame has loaded
       $(".subscribe iframe").each(function(){
        var source = $(this).attr("src");
        //alert(source);
        var sourceNew = source.replace("https", "http"); // change https to http
        alert(sourceNew);
        $(this).attr("src", sourceNew); 
    }); 
}); 

我将.HTACCESS设置为禁用服务器缓存

<Files *>
Header set Cache-Control: "private, pre-check=0, post-check=0, max-age=0"
Header set Expires: 0
Header set Pragma: no-cache
</Files>

是什么导致这种情况无法可靠发射?感谢

2 个答案:

答案 0 :(得分:0)

尝试将htaccess中的Expires指令更改为:

Header set Expires "Mon, 01 Jan 1990 01:00:00 GMT"

答案 1 :(得分:0)

尝试使用<body onload="replacehttps()">然后更改

$(window).load(function () {

function replacehttps(){

并且不要忘记将功能块的结尾从});更改为};