控制javascript模块初始化(dropzone)
Control javascript module initialization (dropzone)
我正在尝试手动实例化一个dropzone。为此,我需要首先设置:
Dropzone.autoDiscover = false;
问题是我不知道该在哪里做。要么我做得很早,但Dropzone还没有定义,要么我做的太晚了,Dropzone已经附加到所有Dropzone元素。
目前我正在尝试:
<body onload="myOnload()">
...
<script src="{% static 'bower_components/jquery/dist/jquery.min.js' %}"></script>
<script src="{% static 'bower_components/dropzone/dist/dropzone.js' %}"></script>
...
<script type="text/javascript">
function myOnload() {
Dropzone.autoDiscover = false;
// create here my dropzones programatically
}
</script>
</body>
但这已经太晚了:dropzone已经加载并初始化了没有url的组件(因为我没有使用表单),并且失败了。
如何控制Dropzone何时开始初始化组件?
正如我在其他人的问题评论中所解释的,我不是如何加载页面的专家,但我会尝试解释这个过程,或者至少我认为这个过程是如何工作的。
dropzone库在触发DOMContentLoaded
事件之前不会尝试附加到元素,这与body标记的onload
属性有点相同,但不完全确定,但我认为onload
在触发之前还需要等待一些事情。
因此,我认为发生的事情是,首先触发DOMContentLoaded
,Dropzone自动连接到.dropzone
元素。稍晚,onload
事件被触发,并且myOnload()
函数被调用,这是因为dropzone已经被附加。
要解决这个问题,您必须在库之后包含设置Dropzone.autoDiscover = false
但没有换行的脚本。
<script src="{% static 'bower_components/jquery/dist/jquery.min.js' %}"></script>
<script src="{% static 'bower_components/dropzone/dist/dropzone.js' %}"></script>
<script type="text/javascript">
Dropzone.autoDiscover = false;
function myOnload() {
// create here my dropzones programatically
}
</script>
尝试在外部编写,然后手动添加需要的
<script type="text/javascript">
Dropzone.autoDiscover = false;
function myOnload() {
// create here my dropzones programatically
}
</script>
这个脚本标签应该在编写插件之前包括:
<script type="text/javascript">
Dropzone.autoDiscover = false;
function myOnload() {
// create here my dropzones programatically
}
</script>
<script src="{% static 'bower_components/jquery/dist/jquery.min.js' %}"></script>
<script src="{% static 'bower_components/dropzone/dist/dropzone.js' %}"></script>
相关文章:
- 使用javascript函数在页面初始化后加载jquery
- 未捕获错误:无法在初始化之前调用方法;
- 如何在剑道网格初始化后设置pageSizes
- React redux初始化功能,无论状态变化如何
- 为什么可以't Protractor在自动初始化的Angular网站上查找Angular
- 尝试初始化()Spine's控制器和故障
- Angular.js延迟控制器初始化
- 对插件初始化后动态加载的元素进行样式设置
- Angular JS控制器初始化错误
- 在XMLHttpRequest之后重新初始化jQuery
- ember-js组件初始化不同的函数
- Youtube JavaScript API不是't正在初始化
- 函数无法识别初始化的变量
- datepicker引导程序再次初始化
- jquery数据表在初始化时设置宽度
- 如何使用app和secret进行安全的解析初始化
- 从javascript中再次初始化c变量
- ng重复中的ng模型-初始化唯一作用域属性
- 正在Ajax调用上初始化主干视图
- 控制javascript模块初始化(dropzone)