- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
这是一个图像 slider 。基本上取自w3school。
<head>
<script src="code.js"></script>
</head>
<body>
<section id="slider">
<img class="sliderImage" src="images/slider/1.jpg" style="width:100%">
<img class="sliderImage" src="images/slider/2.jpg" style="width:100%">
<img class="sliderImage" src="images/slider/3.jpg" style="width:100%">
<img class="sliderImage" src="images/slider/4.jpg" style="width:100%">
<a id="sliderprev" onclick="plusDivs(-1)"> ❮ </a>
<a id="slidernext" onclick="plusDivs(1)"> ❯ </a>
</section>
</body>
以及外部js文件:
var slideIndex=1;
sliderFunction(slideIndex);
function plusDivs(a){
sliderFunction(slideIndex += a);
}
function sliderFunction(a){
var i;
var b = document.getElementsByClassName("sliderImage");
if(a > b.length){
slideIndex = 1;
}
if(a < 1){
slideIndex = b.length;
}
for(i=0; i < b.length; i++){
b[i].style.display = "none";
}
b[slideIndex-1].style.display = "block";
}
所以它只在我放置 <script>
时才有效。之后<image>
和<a>
。我知道 js 文件在文档之前加载,这导致了问题。我到底该如何解决这个问题?
最佳答案
So it only works whenever I place after those
<image>
and<a>
.
这是 what you should do ,除非有充分的理由去做其他事情。把你的script
标签位于文档的最后,就在结束之前 </body>
标签。这样,所有元素都可供脚本代码使用,并且加载脚本不会延迟渲染页面。
如果您必须将它们放在其他地方,请使用 async
or defer
但如果您使用多个脚本,请注意脚本加载顺序问题。 (并检查您的目标浏览器是否有适当的支持。)
如果您无法做到这一点,请使用 DOMContentLoaded
事件;所有现代浏览器都支持它:
document.addEventListener("DOMContentLoaded", function() {
// Code here
}, false);
关于javascript - 如何仅在加载所有元素后才在头部加载Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40345546/
我有一个集合,其文档如下所示: count: number first: timestamp last: timestamp first值应该(几乎)在文档创建后永远不会改变。 在批量写入操作中,我试
我想删除 Java 字符串中的最后一位数字,前提是它只存在一位数字。 例如。 String text = "I am the9 number1"; // should be "I am the num
##问题 我应该如何向我的 vue 项目添加条件语句,以在某些数据不可用时显示某个元素,并隐藏父元素。 ##背景 我正在从包含菜谱的 Taco API 获取数据。但有时该数据是空的。 如果有数据,目前
我创建了 php ekart 网站只是为了测试目的。我的查询是,当我单击“添加到购物车”时,它应该首先验证是否选择了任何一种颜色和任何一种尺寸,如果都选择了,则将产品添加到购物车,这很好用,但如果我添
当我发送请求时,我从服务器收到错误 500。type20,type30 未定义。 type30以后会补上值。如何设置'filter [status]': [type10, type20, type30
在我的网络应用程序中,我显示股票价格。我使用 jquery 自动完成功能在输入股票名称时显示选项。但我已经构建了 javascript 数组的本地副本。我想显示此本地数组中的选项,如果在本地数组中找不
我是 iOS 开发的新手,我有一个问题,我认为答案很简单,但我似乎找不到实现它的方法。 我有一个 UITableViewController 由用户点击 NavigationBar 上的按钮填充,用户
我在 Jenkins 管道中运行 SonarQube(不使用插件,我使用的是容器)。我正在使用来自 docker hub 的 docker image sonarqube,并通过以下方式启动它 doc
我对 firestore 和 angular 完全陌生,但经过几天的工作,我设法编写了一个 ionic/angular web 应用程序,它使用 google firestore 作为后端。 每次在
我在 Android 上使用 Parse.com 来导入一些数据并用它填充 ListView 。我在异步方面遇到了一些麻烦。 我有一个名为 DataHandler 的类,它在实例化时从数据库导入数据并
我只想在 LayersControl 中单击图层并且缩放级别大于某个数字时才显示该图层,例如8. 原因之一是,必须执行一些昂贵的计算才能获得图层坐标。我想使用图层控件而不是额外的输入按钮(出于光学原因
我是一名优秀的程序员,十分优秀!