脚本访问内联javascript变量
scripts access to inline javascript variables
在加载外部脚本之前,是否有刷新或注册内联变量的方法?
即在MasterPage的顶部有一个脚本块。Master Body
<script type="text/javascript">
var promoteSuggestionID = "<%= SuggestionID %>";
</script>
页面正文底部的捆绑脚本。
<%: Scripts.Render("~/scripts/Timeline") %>
时间线脚本
(function (TimeLine) {
TimeLine.PromoteSuggestion = promoteSuggestionID;
//....Main body of script
}((window.TimeLine) ? window.TimeLine : (window.TimeLine = {})));
使用Chrome,当时间线脚本中的行被击中时,会显示以下错误。
未捕获引用错误:promoteSuggestionID未定义(匿名函数)
之前我们通过modernizer加载时间线脚本。当我使用chrome时,如果我在Timeline.PromotedSugestionID代码上放置断点,我可以看到default.aspx代码设置了promotedSugistionID。就好像这个脚本块还没有注册一样,有没有办法设置优先级?
出于这个原因,你真的不应该让页面上的JavaScript像这样运行。我的意思是,如果我有JavaScript,它将在解析时执行,那么我不能保证它何时执行。而且,根据浏览器、页面顺序等,它很可能在所有内容都完全加载之前运行。
把你的函数改成一个定义,然后把它连接起来,在document.ready上调用。这是正确的方法,你可以保证DOM和所有引用的JS在这一点上都很好。
相关文章:
- 将函数的上下文应用于javascript变量
- 如何通过ajax刷新JSF填充的javascript变量
- Javascript变量赋值|
- 限制javascript变量的最小/最大整数
- 来自文本输入null的html javascript变量
- 访问jsrender模板中的全局javascript变量并更新它
- 从数据库中获取数据并插入JavaScript变量
- 如何将javascript变量传递到Meteor Spacebars模板中
- 将JavaScript变量保存到Rails模型
- 在if语句下的html中使用javascript变量
- Javascript变量分配-按类别
- 操作javascript变量[HTML]以只显示文本
- 无法比较javascript变量
- 如何将smarty变量与javascript变量进行比较
- 如何使用PHP将javascript变量添加到mysql数据库中
- Javascript 变量使用 jquery 查找变量
- 重新加载页面时Javascript变量发生变化
- 在asp classic中使用javascript变量
- 全局Javascript变量变为null
- 如何向服务器端提交javascript变量