jQuery的导入到的Joomla(Importing jQuery into Joomla)

2019-06-18 05:18发布

我一直是一个Joomla开发人员几乎是一年了。 我一直在努力导入的jQuery到日常的Joomla。 的Joomla自带的mootools。 当我导入jQuery的崩溃。 此外,当我创建模块,我不得不进口的jQuery成,这使得现场慢的每个模块。 有时,它使整个网站崩溃。 我想这两个mootools的和jQuery到携手合作,所以我可以没有任何崩溃同时使用。

什么是jQuery的导入到的Joomla的最佳方式? 是否有一个地方的进口应该怎样做才能使用一个jQuery库站点范围内( 包括后端和前端 )一个特定的地方?

谢谢

Answer 1:

这是我们用什么来保证只有1 jQuery的副本导入代码。 它只是检查是否已经被导入jQuery和如果没有,那么我们导入它:)

的Joomla 2.5

<?php
  $app = JFactory::getApplication();
  if (!$app->get('jquery'))
  {
     $app->set('jquery', true);
     JFactory::getDocument()->addScript(JUri::root() . 'templates/template_name/js/jquery.js');
  }
?>

的Joomla 3.x的(没有冲突模式):

JHtml::_('jquery.framework');

的Joomla 3.X(正常模式):

JHtml::_('jquery.framework', false);

你需要那么你还记得它在哪里插入此代码到您的模板的index.php文件 ,最好靠近顶部。 如果你不希望覆盖模板的index.php文件,那么你也可以开发一个小插件

更新:

巴比说。 很多扩展包括自己的jQuery副本,他们中的很多不使用此方法,从而导致冲突。 我所知道的是,任何优秀的开发人员应该知道,多jQuery的库造成冲突,应使用此代码。



Answer 2:

这是一个伟大的插件。

http://extensions.joomla.org/extensions/core-enhancements/performance/jquery-scripts/18327

这个插件是为了帮助清洁,使用jQuery的情况下,当旁边的MooTools的图书馆解决前端和后端的问题。

WHAT DOES IT OUT-OF-THE BOX

  • 要求从谷歌CDN的jQuery和jQuery UI库(有或无协议) - 但你可以做到这一点本地也是如此,
  • 地方jQuery的库MooTools的要求完美兼容后,
  • 增加了noConflict()的代码旁边的jQuery库调用,
  • 剔除了额外的jQuery和jQuery UI库,包括noConflict()调用由其他模块或插件添加
  • 让您选择jQuery UI的基本样式或自定义主题。

什么你可以调整

  • 禁用暂定在前端MooTools的图书馆,
  • 启用或在网站的特定部分禁用插件,从模板以单页,
  • 使用报告,以得到什么插件引擎做了反馈,
  • 添加或删除脚本和样式,
  • 剥离通过向页面所做的修改左空行,
  • 防止一些库被剥离出来,
  • 修改引擎的工作原理是默认的方式(不添加或删除noConflict()的代码...)


Answer 3:

使用的Joomla! 3.0 -如果你已经花了很久想你应该帮助了与的Joomla! JavaScript的工作组始建于解决这个问题。



Answer 4:

在的Joomla 3.X JApplication不会再JObject当你想使用相同的代码在你的扩展为Joomla 2.5和Joomla 3.x的扩展,这意味着,你必须写,如果条件一样

if (!version_compare(JVERSION, '3', 'ge') && !JFactory::getApplication()->get('jquery', false)) {

否则,它会崩溃! 一个例子可以在这里找到https://github.com/Digital-Peak/DPExtensions/blob/master/mod_dpslider/tmpl/default.php#L13



文章来源: Importing jQuery into Joomla