【问题标题】:Joomla 2.5 not loading JS scripts through article?Joomla 2.5 不通过文章加载 JS 脚本?
【发布时间】:2012-07-12 20:48:51
【问题描述】:

在 Joomla 2.5 中,我安装了 DirectPHP,我在 Joomla 1.6 中广泛使用它来将 PHP 嵌入到 Joomla 文章中。它工作得很好。我通常只在文章中包含一个,像这样:

<?php
    include "my_cool_script.php";
?>

然后我在my_cool_script.php 中编写代码。我经常做的一件事是在页面中包含更多的 JS 或 CSS 脚本,直通文章,但将以下行放入 my_cool_script.php

<link rel="stylesheet" type="text/css" media="screen" href="/scripts/css/dark-hive/jquery-ui-1.8.21.custom.css" />
<link rel="stylesheet" type="text/css" media="screen" href="/scripts/css/ui.jqgrid.css" />
<script src="/scripts/js/jquery-1.7.2.min.js" type="text/javascript"></script>
<script src="/scripts/js/jquery-ui-1.8.21.custom.min.js" type="text/javascript"></script>
<script src="/scripts/js/i18n/grid.locale-en.js" type="text/javascript"></script>
<script src="/scripts/js/jquery.jqGrid.src.js" type="text/javascript"></script>

这在过去一直有效,在 Joomla 1.6 中。现在在 Joomla 2.5 安装中。其余的 PHP 和 HTML 正在文章中加载,就加载脚本而言,页面上没有任何错误。我查看了 HTML 代码,可以看到上面写到页面的行,但是我无法访问任何 jQuery 函数,就像没有加载脚本一样。当我尝试使用任何 jQuery 语法时出现错误。我知道这个脚本可以正常工作,因为我刚刚将它从另一个站点移动,运行 joomla 1.5 到新的 2.5。

有人知道为什么脚本没有加载吗?

编辑

我猜脚本正在加载,但它不喜欢使用$ 符号。我将它们全部更改为 jQuery 并且可以正常工作。

【问题讨论】:

  • 可能与它们最终出现在文档正文结构中的某个位置有关。这种行为在浏览器中是否一致?
  • 好问题,我在 Ubuntu 上使用 Chromium,我可以检查 Firefox,是的,同样的事情发生在 Firefox 中
  • 如果你直接寻址脚本的负载?即yoursite.com/scripts/js/jquery-1.7.2.min.js
  • 我不认为脚本是从正确的位置加载的。尝试在 url 中包含 JURI::root() 代码

标签: php jquery scripting joomla article


【解决方案1】:

我不确定为什么,但也许在我的安装中存在一些冲突,$ 符号像往常一样被识别,表示我们是 dong jQuery。因此,我将 PHP 脚本中的所有 $ 更改为 jQuery,所有 jQuery 似乎现在都可以正常工作了。

【讨论】:

    【解决方案2】:

    Mootools(Joomla 的 javascript 默认框架,直到 2.5 版)也使用“$”,因此如果您不知道自己运行的脚本同时依赖于两个框架,很容易遇到一些复杂情况。

    话虽如此,您可以使用 'jQuery' 而不是 '$' 并使用 jQuery.noConflict(); 命令为其他所有人发布 '$'。

    干杯。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-03-09
      • 2023-04-09
      • 2017-08-22
      • 2012-12-10
      • 2013-08-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多