您好我正在寻找基于 Dojo 1.8 的教程。我正在寻找的是:- 在 dojo 页面完全加载和解析后,在 dojo/on 按钮后触发,实用地创建和实例化小部件。我不确定 Dojo 网站上的哪个教程供我学习。
请指教。提前致谢。克莱门特
您好我正在寻找基于 Dojo 1.8 的教程。我正在寻找的是:- 在 dojo 页面完全加载和解析后,在 dojo/on 按钮后触发,实用地创建和实例化小部件。我不确定 Dojo 网站上的哪个教程供我学习。
请指教。提前致谢。克莱门特
没有一个教程可以完全回答您的所有问题,但以下内容会有所帮助:
要捕获页面的完整加载和解析,您需要结合使用dojo/ready和dojo/parser。(我假设您所指的解析是dojo 小部件解析器,而不是HTML 的标准浏览器解析)。
要在解析后运行代码,您需要将parseOnLoad: false添加到您的dojoConfig并手动运行解析器;否则,完成时无法捕获。
<script type="text/javascript" async="true">
require([
"dojo/ready",
"dojo/parser",
"dojo/on,
"dojo/query"
], function(
ready, parser, on, $
){
ready(function(){
// Only run after the page is fully loaded
parser.parse().then(function(instances){
// Only run after parser has parsed the page
var myButton = $("#myButtonid"); // Find your button
if(myButton.length > 0){ // Check button is found
on(myButton[0], "click", function(evt){
// ... add your code here to create and
// instantiate widget
});
}
});
});
}
</script>
不要忘记您需要在dojoConfig中关闭小部件的自动解析,因此,像这样(在头部):
<script type="text/javascript">
dojoConfig= {
"parseOnLoad": false,
"async": true
// ...other settings
};
</script>