最终目标是在博客页面上循环浏览照片。看起来像'document.getElementById()。src'将是一个很好的方法。
问题:为了确保javascript代码成功链接到博客页面,我尝试在我的script.js文件中进行测试:
document.getElementById('testID').innerHTML = "Running test";
这在我的.html文件中:
<div id="testID"></div>
但是,“运行测试”文本没有显示在博客页面上。但是,在我的index.html页面中运行同样的完全测试时, 可以正常工作。两个.html文件都加载了相同的脚本文件和jQuery。我不明白为什么它在一个html文件中工作而不是另一个。
新发现: 当我从
中删除它时,这行代码现在可以在博客页面上运行$(document).ready(function(){ ... });
为什么会这样?
答案 0 :(得分:0)
当前页面中的Javascript只能访问当前加载到浏览器中的页面中的HTML元素。
更具体地说,document.getElementById()
仅搜索当前网页的文档以查找匹配的元素。它不会搜索任何其他页面,当然也不会搜索服务器上未加载到浏览器中的其他文件。 “当前网页”表示从浏览器栏中的当前URL加载的HTML。
当网页在浏览器窗口中不再可见时(例如,它被其他页面替换),它就会消失,任何Javascript都无法访问。在某些特定情况下,您可以访问加载到其他选项卡或其他框架中的文档(遵循同源安全规则并需要不同的访问方法)。
此外,浏览器中不会对网页进行任何更改。只要网页不再加载到活动的浏览器窗口中,它就会消失并再次重新加载它将加载该文档的原始未修改版本。
如果您希望一个页面中的相同代码在另一个页面中运行,则必须在另一个页面中包含相同的代码。您可以通过将代码放入其自己的页面然后在每个页面中使用<script src="xxx.js">
标记来共享对代码的引用,以使相同的代码加载到每个页面中。
答案 1 :(得分:0)
如果正确解释问题,请尝试使用width: 100%
.load()