我有一个复杂的应用程序,其中html和样式由框架呈现。当页面加载时,我需要从许多元素中获取诸如高度,偏移量,scrollTop位置等内容。我知道
$( document ).ready
在将样式应用于元素之前触发因此为什么我使用window.load。问题是我无法解雇它?我已经创建了一个小提琴,用新的和旧的方式来激活窗口加载,但它无法正常工作。在我的应用程序中,我使用jquery 1.11.1,小提琴使用1.9.1。
我如何在我的应用程序中实际调用我的代码:
<html>
<head>
<script type="javascript" source="https://code.jquery.com/jquery-latest.min.js"/>
</head>
<body>
<H1>
TITLE
</H1>
<script type="text/javascript">
$(window).load(function() {
alert("Window Loaded 1 ");
});
$(window).on('load', function() {
alert("Window Loaded 2 ");
});
</script>
</body>
</html>
答案 0 :(得分:3)
不推荐使用.load()
事件侦听器快捷方式
请改用$(window).on('load', function
。同时将其保持在$(document).ready()
或window.onload
小提琴自动将您的代码放入onload
回调中,这就是它在您的演示中不起作用的原因。如果您更改&#34;加载类型&#34;在小提琴中没有包装&#34;该演示工作正常
根据添加到问题的新html进行更新。您的脚本标记无效
更改
<script type="javascript" source="https://code.jquery.com/jquery-latest.min.js"/>
要
<script src="https://code.jquery.com/jquery-latest.min.js"></script>
<!-- ^ src not source ^^ needs closing tag
答案 1 :(得分:2)
这里出了三个问题
无法使用自动关闭<script />
代码
应该是src
,而不是source
type
为type="text/javascript"
,而不是type="javascript"
,请注意:
HTML5规范敦促作者省略
type
属性而不是 提供冗余的MIME类型。
Src:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script#attr-type
Stack snippet
<script src="https://code.jquery.com/jquery-latest.min.js"></script>
<H1>
TITLE
</H1>
<script>
$(window).load(function() {
alert("Window Loaded 1 ");
});
$(window).on('load', function() {
alert("Window Loaded 2 ");
});
</script>
&#13;