我正在创建一个网络小部件。所以基本上我从远程服务器加载脚本并在容器 div 中显示内容。我需要向服务器发送额外的参数,例如过滤一些内容或选择显示,所以我有两个选项
在脚本标签中传递数据(我在代码中动态生成脚本)
<script src="http://localhost/wordpress/?ai1ec_requirejs_widget&ai1ec=action:posterboard|no_navigation:true|request_type:jsonp"></script>
<div id="timely"></div>
将数据作为数据属性传递<div>
<script src="http://localhost/wordpress/?ai1ec_requirejs_widget&ai1ec=action:posterboard|no_navigation:true|request_type:jsonp"></script>
<div id="timely" data-action="view" data-no-navigation="true" data-request-type="jsonp" ></div>
到目前为止,出于这个原因,我选择了第一种方法:如果我在请求脚本中包含数据,我不必等待 DOM 准备好获取<div>
过滤事件的值。我正在加载的脚本只是一个异步加载 requirejs 的小脚本。要求 js 加载后立即进行 ajax 调用以获取数据(无需等待 DOM 准备好,因为我已经拥有所需的所有信息),当数据到达时,如果 dom 准备好,它就会启动附加事件处理程序。否则我必须等待 DOM 准备就绪,然后再调用获取数据
我的想法是,如果我包括
<script src="http://localhost/wordpress/?ai1ec_requirejs_widget&ai1ec=action:posterboard|no_navigation:true|request_type:jsonp"></script>
作为第一个脚本,它将开始异步下载 require.js,然后更快地启动一切,但也许我完全错了。
你怎么看?