innerHTML在else条件下未更改
innerHTML not changing in else condition
请参阅以下代码
<div id="news-ticker">
<marquee id="news-marquee" scrollamount="3" onmouseover="stop()" onmouseout="start()" style="padding-top:2px; padding-bottom:2px;">
Latest News
</marquee>
</div>
<script type="text/javascript">
var currenturl = document.URL;
if ((currenturl.indexOf("&lang=nl") != -1) || (currenturl.indexOf(";lang=nl") != -1) || (currenturl.indexOf("&lang=nl#content") != -1)) {
document.getElementById("news-marquee").innerHTML = '<?php require_once("news_nl.php"); ?>';
}
else if ((currenturl.indexOf("&lang=en") != -1) || (currenturl.indexOf(";lang=en") != -1) || (currenturl.indexOf("&lang=en#content") != -1)) {
document.getElementById("news-marquee").innerHTML = '<?php require_once("news_en.php"); ?>';
}
else if ((currenturl.indexOf("&lang=fr") != -1) || (currenturl.indexOf(";lang=fr") != -1) || (currenturl.indexOf("&lang=fr#content") != -1)) {
document.getElementById("news-marquee").innerHTML = '<?php require_once("news_fr.php"); ?>';
}
else {
document.getElementById("news-marquee").innerHTML = '<?php require_once("news_nl.php"); ?>';
}
</script>
在一个HTML页面上,我有一个div,它包含一个用于显示网页上最新新闻的字幕。需要在字幕中显示的内容取自php文件。发生了什么:
当页面加载时,我第一次看到"最新消息"出现在字幕中。也就是说:它显示在javascript执行之前不久。之后,新闻字幕会显示正确的内容:如果我在网站的荷兰语(&lang=nl)部分,则会显示荷兰语新闻项目,法语项目会显示在法语网站上等等。
但有些页面的URL上没有"&lang=xx"的踪迹,所以在这些情况下,我有默认显示荷兰新闻项目的else条件。然而,这不会被执行。新闻标题保持空白。甚至连"最新消息"都不再显示了。
萤火虫不会给我任何错误,所以我不知道这里会发生什么。
您的问题是使用require_once
而不是include
。require_once
只允许包含一次文件。
我建议在PHP中进行检查,只给客户端一个文件,以减少带宽使用。
不要使用innerHTML句点。它是一个专有的Microsoft JScript方法,无法正确解析插入DOM的代码。在翻译中,当你试图通过innerHTML与你"插入"的代码交互时,它可能对浏览器可见,也可能不可见。
坚持W3C标准方法,如appendChild
、importNode
、insertBefore
和replaceChild
。
如果需要在文本和代码之间进行转换,请使用new DOMParser()
将文本解析为代码,使用new XMLSerializer()
将代码解析为文本。
此外,您应该坚持在PHP中使用单引号,因为双引号用于将变量解释为需要更多资源的文本。我假设includes是在服务器上执行的,而您实际上并不期望它们在客户端执行。
- html+javascript:如何在某些条件下禁用dropdownlist中的null选项
- 在特定条件下从存储在localStorage中的阵列中删除对象
- 如何在一定条件下使必填字段为真
- 如何在特定条件下完全禁用FullPage.js
- 在条件下使用 slideUp() 和 slideDown()
- 停止计算以在特定条件下更新
- 如何加载特定天气条件下的图标?(AngularJS)
- 比较IF条件下的两个javascript数值
- ComboBox typeAhead有效,但在某些行为条件下valueField为空
- 返回三元条件下的新promise Q
- jqgrid在条件下动态设置单元格可编辑false
- innerHTML在else条件下未更改
- 如何在两种条件下显示相同的上下文菜单项
- Regex用于在特定条件下为新句子添加空格或句号
- HTML页面在使用JavaScript的条件下重新加载
- 保持函数在一定条件下执行
- 在不同条件下显示变量的不同值
- 如何解决if-else条件下的ajax调用
- 这可能在javascript中(不使用jquery)使键盘的tab键在if-else条件下启用或禁用吗
- 在if-else条件下动画SVG