外部Javascript函数不仅适用于Firefox

时间:2013-10-01 15:04:37

标签: javascript firefox

我处于这种情况,我需要在丹麦语和英语两个不同的域上显示相同的信息。这些网站上的信息经常更新(小更新),我们被迫使用两个或多或少过时的CMS。为了防止总共更新4个不同的页面以及可能发生的不一致的更改,我们决定将页面编写为外部并使用javascript包含它们。因此,英语和丹麦语文本组合在一个单独的javascript中,四个页面只是空壳,可以填写,如下所示:

    <html>
    <head>
        <title></title>
        <meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type" />
        <link rel="stylesheet" type="text/css" href="https://blanketter.science.ku.dk/studievejledning/studievejledning.css" />
<script src="https://blanketter.science.ku.dk/studievejledning/studievejledning-content.js" type="text/javascript"> </script>
        <script type="text/javascript" src="https://blanketter.science.ku.dk/studievejledning/skemadk.js"></script>

<script type="text/javascript">
</script>
    </head>
    <body>
<div id="container">
        <div id="dynamic-intro"></div>
        <div id="dynamic-specialOpeningHours"></div>
        <div id="dynamic-contact"></div>
        <div id="dynamic-closedWeeks"></div>
        <div id="dynamic-openingHours"></div>

        ..

        <div class="aflysninger"><img alt="" src="http://www.science.ku.dk/uddannelser/studenterservice/icon-green.png" /> Vejledning på <strong>Nørre Campus, Green Lighthouse - Tagensvej 16A</strong> (<a href="http://www.science.ku.dk/uddannelser/studenterservice/vejviser/">find vej</a>)<br />
        <img alt="" src="http://www.science.ku.dk/uddannelser/studenterservice/icon-blue.png" /> Vejledning på <strong>Frederiksberg Campus - Thorvaldensvej 40</strong> (<a href="http://www.science.ku.dk/uddannelser/studenterservice/vejviser/">find vej</a>)<br />
        </div>
        <script language="JavaScript" type="text/javascript">
document.getElementById('content').className = "subpage wide";
</script>
        <script type="text/javascript">

if(typeof writePageByLanguage === typeof undefined){
document.getElementById('container').innerHTML = "Error";
} else {
writePageByLanguage('danish');
showGenere();
}
</script>
</div>
    </body>
</html>

我在中间留下了一些,它只是一个空的(但不超过50行)表。

包含内容的脚本由此引用加载:

<script src="https://blanketter.science.ku.dk/studievejledning/studievejledning-content.js" type="text/javascript"> </script>

调用以下方法时,页面将“填写”:

writePageByLanguage('danish');

事情是 - 它有效!......几乎无处不在。在IE中 - 尚未解决问题。 Chrome - 没问题!我的Firefox(ESR 17.0.9) - 没有问题..但是我的同事使用ESR 17.0.9得到的错误页面显示,当方法“writePageByLanguage(..)”未定义时 - &gt;没装?同我的同事使用Firefox 24.0

我正在寻找至少一些向用户解释的方式,他们如何更改设置以查看页面而不是通过其他浏览器访问它。有什么想法吗?

页面本身可以在这里找到(英文ofc): http://www.science.ku.dk/english/courses-and-programmes/studentservices/guidance/

您收到错误消息吗?你知道这个问题吗?我认为它必须以某种方式成为外部引用,但由于它在其他浏览器中有效,我不明白它?

更新:

我已经通过Lint运行脚本并发现了一些较小的错误,但这还没有解决问题。

我发现根据Firefox中的Web调试工具从未加载脚本本身:

[12:47:26.428] GET https://blanketter.science.ku.dk/international/international-content.js [未定义]

但是我的浏览器是非常相同的Firefox版本加载脚本没有问题: [HTTP / 1.1 304未修改15ms]

0 个答案:

没有答案