在 Joomla 2.5 中使用 Jquery 选择一个类
Posted
技术标签:
【中文标题】在 Joomla 2.5 中使用 Jquery 选择一个类【英文标题】:Using Jquery to Select a class in Joomla 2.5 【发布时间】:2014-09-12 06:53:19 【问题描述】:我在扯我的头发,为什么这不起作用。我在 Joomla 2.5 上有一个客户端,模板调用 jQuery 1.8。我只是想将 target="_blank" 属性添加到一些具有通用类 .social-button 的链接这是我的代码:
$(document).ready(function()
$(".social-button").attr('target','_blank');
);
有人有什么想法吗?
【问题讨论】:
您何时/何处在 DOM 中添加 jqeury 代码?你遇到了什么错误? 你最后多了一个 “我在 Joomla 2.5 上有一个客户”这是你的第一个问题 :) @AminJafari 是正确的。如果您只查看了 tour web-inspector/debugger/firebug 的控制台,您就会注意到。你确实有其中一个对? 我在发布后注意到额外的括号,但仍然没有任何区别。我知道 Joomla 不是最好的,但我坚持下去。我没有建立网站。 js 在页面的其余部分之前加载,这可能是我的问题。当我尝试将它添加到文档末尾时,Joomla 会重新编写 【参考方案1】:我不确定您在哪里添加代码,请尝试以下操作:
<?php
$doc = JFactory::getDocument();
$doc->addScriptDeclaration('
jQuery(document).ready(function($)
$(".social-button").attr("target","_blank");
);
');
?>
以上代码使用 Jooma API 方法将您的代码注入模板的<head>
。
我不确定您是如何导入 jQuery 的,或者这是否已经完成。如果您要自己导入 jQuery,请阅读我在 How to import jQuery in Joomla 上的回答,因为您可能加载了多个库,从而导致冲突。
最后补充说明,Joomla 确实,就像任何 CMS 一样,它也有它的缺点,但是对于一个开箱即用的 CMS 它实际上非常好并且非常灵活。如果您要升级到 3.3.1,您会发现更多功能触手可及。
【讨论】:
做到了!谢谢!【参考方案2】:试试这个:
<script>
window.onload = function()
$(".social-button").attr('target','_blank');
;
</script>
【讨论】:
运气不好。它在body标签之前加载js……这会导致问题吗? 嗯,window.onload 通常会等到页面加载完毕,你也可以试试这个: window.onload 上还有其他内容吗?如果是这样,请使用此 window.addEventListener('load', function() $(".social-button").attr('target','_blank');); body标签不需要加onload函数 @Ryan 您可以通过简单地将 Joomla 设置中的 html 输出作为小提琴发布来提供帮助,我们可以看看在哪里加载了什么。以上是关于在 Joomla 2.5 中使用 Jquery 选择一个类的主要内容,如果未能解决你的问题,请参考以下文章