标签分类:脚本加载

Modernizr使用

Modernizr作为开发HTML5必要的js工具,提供有以下多种功能 1.css 可以通过feature检测(包括html5元素如canvas,或是css3属性如border-radius)为html的加入相应的类,对于不支持的feature则加入以no-为前缀的类。 可以为html加入名为“no-js”的类,这样即使没有js环境来执行Modernizr,也提供了相应的fallback类,而一旦 …

阅读全文

更好的模块文件组织

来自D2前端技术论坛中的ppt,可以在此查看 前端中静态文件与文件夹组织也有些讲究。可以结合wp的主题进行思考,其中CSS样式表不合并请求请求多,合并又太大,不好取舍。又比如js加载,如何让重要的控件可以先响应,像某些重要的按钮。 加载执行顺序方面,body需要等到head中的资源下载完成后才开始渲染,同时body中的资源需要等到之前的js执行完才会开始下载。js会等到其前面所有css下载完成后才 …

阅读全文

wp_enqueue_script与wp_enqueue_style相关函数的使用

很多主题都未使用WP系统提供的api来引用额外脚本与样式表,而是在前端页面代码中加入或是在某些函数中输出。就最终结果来讲其实影响不大(当然如果使用wp_minify这个插件来进行站点性能优化,可能会出现某些js代码或样式表遗漏的状况),但这会给代码管理上带来困难,特别是当你需要修改这些外部引用代码位置的时候。

其实WP提供了wp_register_style,wp_register_script,wp_enqueue_style,wp_enqueue_script四个函数来简化额外样式表与JS代码脚本的引用。

前面两个用于向WP注册引用信息,后面两个用于真正插入样式或脚本。实现待补充。

特别需要注意的是wp_enqueue_script使用时必须在调用wp_header函数之前,否则注册时wp_register_script是否在尾部加入的参数设置不会起到效果,甚至会影响wp_enqueue_style的插入地点,变为一律在最后调用函数的位置处插入脚本与样式表,这对样式来说问题就比较大咯。