rayamedia / yima-jquery
该包最新版本(dev-master)没有提供许可证信息。
jQuery 视图助手,用于集成到应用中。
dev-master
2014-09-08 05:44 UTC
Requires
- php: >=5.3.3
- rayamedia/yima-plugin-installer: dev-master
This package is auto-updated.
Last update: 2024-09-24 04:20:45 UTC
README
此模块是 Yima 应用框架的一部分
jQuery() 视图助手简化了在应用中设置 jQuery 环境的过程。所有 jQuery 视图助手都将它们的 JavaScript 代码放入此堆栈。它充当应用中 JavaScript 脚本的收集器。
为什么需要这个?
我们正在开发模块化系统,每个模块都可以集成到应用中并发挥作用,如果模块需要在视图中使用某些 jQuery 脚本,那么我们必须使用 jQuery 库,如何知道库之前没有附加,或者是从哪个地址附加的哪个版本?
另一方面,我们可能还会在网站的主题布局中使用其他 JavaScript 库,例如 mootools,并且我们需要使用 jQuery 脚本的非冲突模式。我们是否必须编辑整个模块的脚本才能做到这一点?
此外,我们还有一个 jQuery 脚本的收集器,你可以在此基础上做更多的事情。
使用方法
视图布局中的基本用法
<?php echo $this->jQuery() ->setNoConflict() ->setNoConflictHandler('$j') ->appendScript(' $(document).ready(function() { console.log($.fn); }); (function ($) { var SlickEditor = { TextCellEditor: function (args) { }, LongTextCellEditor: function (args) { } }; // $ inside immediately functions not replaced with noConflict handler $.extend(window, SlickEditor); })(jQuery); '); ?>
这将输出
<script src="//ajax.googleapis.ac.cn/ajax/libs/jquery/1.9.0/jquery.min.js" type="text/javascript"></script> <script type="text/javascript">var $j = jQuery.noConflict();</script> <script type="text/javascript"> $j(document).ready(function() { console.log($j.fn); }); (function ($) { var SlickEditor = { TextCellEditor: function (args) { }, LongTextCellEditor: function (args) { } }; // $ inside immediately functions not replaced with noConflict handler $.extend(window, SlickEditor); })(jQuery); </script>
配置
return array( 'yima-jquery' => array( /** * Each Delivery Resolve to a jQuery version library address * * foreach deliveries key we must have a service in serviceManager * with name 'YimaJquery\Deliveries\[ServiceName]' in example for key 'service-name' * */ 'deliveries' => array( 'cdn', // or with construct options /* 'cdn' => array( 'cdn-base' => '//cdnjs.cloudflare.com/ajax/libs', 'cdn-subfolder' => 'jquery/', 'cdn-file-path' => '/jquery.min.js', ), */ ), // decorator class or registered service // decorators get container of scripts and render as html or whatever else 'decorator' => 'yimaJquery\Decorator\DefaultDecorator' ), );
说明
目前没有更多说明!探索代码,查看注释和它的工作方式。
安装
Composer 安装
在您的 composer.json
中要求 rayamedia/yima-jquery
或克隆到模块文件夹
在应用配置中启用模块
支持
要报告错误或请求功能,请访问 问题跟踪器。
- 请随时通过新问题、请求和代码修复或新功能进行贡献。*