seajs路径问题
seajs模块路径解析
1 | <div class="prizeInfoContainer"> |
提供简单、极致的模块化开发体验。
alias:
别名配置,配置后可在模块中使用require调用 require(’jqurey’);
定义alias–>seajs.config({alias:{‘jquery’ : ‘jquery/jquery/1.10.1/jquery’}})
调用jQuery–>define(function(require, exports, module){//引用jq var $ = require(‘jquery’)});
paths:
设置路径,方便跨目录调用。通过灵活的设置path可以再不影响base的情况下制定到某个目录
定义paths–>seajs.config({paths:{‘gallery’: ‘https://a.alipayojects.com/gallery'},{'alias':'gallery/underscore'}})
调用 define(function(require, exporst, module){var _ = require(‘underscore’)})
vars:
变量配置。有些场景下,模块路径在运行时才能确定,这时候可以用vars变量来配置。在模块中用{key}来表示变量。
定义vars–> seajs.config({vars:{‘local’:’zh-cn’}})
调用 define(function(require, exports, module){var lang = require(‘./i18n/{local}.js’)})
function:
用来在页面中加载一个或多个模块。
加载一个模块 seajs.use(‘./a’);
加载一个模块,在加载完成时,执行回调 seajs.use(‘./a’, function(a){a.dosomething()})
加载多个模块,在加载完成时,执行回调seajs.use([‘./a’,’./b’],function(a,b){a.dosomething();b.dosomething})
注意:seajs.use与DOM ready事件没有任何联系。如果某些操作要确保在DOM ready后执行,需要使用jquery等类库来保证
比如:seajs.use([‘jquery’, ‘./main’], function($, main){$.ready(function(){main.init()})})
seajs.data可以查看seajs所有配置以及一些内部变量
1 | <script id="commentTemplate" type="text/html"> |
1.原因:audio动态改变currentTime 在 ios7下会报异常。
解决:这个属必必须要在媒体加载后才能设置。可以通过在 loadedmetadata 事件的回调中处理。
1 | 1. 打开Chrome浏览器 |
当 onload 事件触发时,页面上所有的DOM,样式表,脚本,图片,flash都已经加载完成了。
当 DOMContentLoaded 事件触发时,仅当DOM加载完成,不包括样式表,图片,flash。