【问题标题】:Local host not letting my link to javascript in wordpress本地主机不允许我在 wordpress 中链接到 javascript
【发布时间】:2011-05-11 03:49:19
【问题描述】:

我更像是一名设计师,但我通常可以在 HTML、CSS 和 Javascript 方面拥有自己的风格。

这个问题已经困扰我好几天了。我正在使用 OS X 上的 MAMP 为自己开发一个新的 wordpress 网站,并且我正在尝试添加一些 jQuery 魔法来增加一些东西。

由于某种原因,我无法读取要读取的文件。 Firebug 说一切都很好,并且 javascript 似乎 已嵌入,但实际函数并未被调用。

当我将原始 javascript 粘贴到 <script> 标签中,直接粘贴到 <head> 中,一切都很好。但是一旦我尝试用

打电话给他们
<script type="text/javascript" src="#"></script>

函数没有被调用。我尝试过链接到我的 JS 文件夹中的 JS,我尝试过链接到 google 托管的 JS,甚至其他使用相同 jQuery 插件的 JS 进行测试的人。

我想不通。我不知道它是 wordpress 的东西还是 localhost 的东西。有什么想法吗?

谢谢!
-会

【问题讨论】:

  • 您收到什么错误信息?检查 Firefox 中的错误控制台。
  • 你写`src="#"`到底是为了什么?

标签: javascript jquery wordpress localhost


【解决方案1】:

“src”属性必须是一个实际的 URL,或者至少是一个相对于页面或服务器源的路径“tail”。字符串“#”没有任何意义。

此外,您实际上并不需要“type”属性,但我知道 HTML 4 和 XHTML 的人似乎喜欢它。

因此类似于:

<script src='/scripts/something.js'></script>

<script src='./scripts/something.js'></script>

或根据您在服务器上排列文件的方式而有所不同。

【讨论】:

  • 对不起,我只是用#作为地标。应该说清楚。
【解决方案2】:

使用 wordpress 时,您应该在主题 function.php 中包含所有 js 调用。如果你用谷歌搜索 wp_enqueue_script,你会发现很多资源。这是在 googles CDN 上使用 jquery 的一种方法:

function tm_javascript() {
if (!is_admin()) {
    wp_deregister_script('jquery');
    wp_register_script('jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js', false, '1.4.2', true);
    wp_enqueue_script('jquery');

    // load a JS file from my theme: js/theme.js
    wp_enqueue_script('tm_filter', get_bloginfo('template_url') . '/js/filterable.js', array('jquery'), false, true);
    wp_enqueue_script('tm_hash', get_bloginfo('template_url') . '/js/jquery.ba-hashchange.min.js', array('jquery'), false, true);
    wp_enqueue_script('tm_ui', get_bloginfo('template_url') . '/js/jquery-ui-widget.js', array('jquery'), false, true);
    wp_enqueue_script('tm_scroll', get_bloginfo('template_url') . '/js/jquery.smoothDivScroll-1.1-min.js', array('jquery', 'tm_ui'), false, true);      
    wp_enqueue_script('tm_ajaxaks', get_bloginfo('template_url') . '/js/aks.js', array('jquery', 'tm_hash', 'tm_filter', 'tm_ui', 'tm_scroll'), false, true);   
}
}
add_action('init', 'tm_javascript');

最开始的部分从 wordpress 中注销包含的 jquery,然后加载实际的 1.4.2 版本。您可以修改代码以始终加载最新版本等。jsut google it up。

然后,您可以从主题子文件夹 /js/ 加载特定于主题的 js 文件,真正有用的部分是数组,您可以在其中声明依赖项。前任。 smoothDicScroll 插件需要在 jquery 和 tm_ui (ui-widget) 插件之后调用。

最后你调用所有的js脚本在页脚..

worls 使用 MAMP 在本地主机上生活。在 localhost 上开发时,最好包含本地 jquery 版本的后备,因为有时您没有连接到互联网。

【讨论】:

  • 太棒了!非常感谢。经过一点点捏造后,我能够让它工作。我完全不知道这个功能。我已经有一段时间没有使用 wordpress 了。
猜你喜欢
  • 2012-03-22
  • 2018-08-28
  • 2020-05-22
  • 2013-12-24
  • 2019-05-24
  • 1970-01-01
  • 1970-01-01
  • 2020-04-30
  • 2010-11-19
相关资源
最近更新 更多