如何将index.php jQuery脚本移动到template.js

时间:2018-08-08 09:02:56

标签: javascript jquery joomla3.0

我设计了一个使用Bootstrap 4x的Joomla 3.8.11模板。模板index.php在结束body标记之前有一个小脚本,该脚本带有三行代码,用于向一些元素添加一些Bootstrap 4代码:

<script>
$( ".sidenav > ul" ).addClass( "menu navbar-nav" );
$( ".separator" ).addClass( "text-hide" );
$( ".divider" ).addClass( "d-sm-none d-md-block" );
</script>

我在该主题上发现的第一篇文章建议先创建一个javascript文件,然后在首先简单地剥离包装脚本标签,然后像这样在index.php文件中调用它之后,插入上述代码:

<script src='/js/menu.js'></script>

但这不起作用。

但是,理想情况是,我希望将代码移到现有js文件(custom.js或template.js)中,而不是再有一个js文件。麻烦的是,我是jquery和javascript的新手,我无法在其中任何一个文件中使用它。

我尝试了许多这样的选择:

$(document).ready(function() {
    $( ".sidenav > ul" ).addClass( "menu navbar-nav" );
    $( ".separator" ).addClass( "text-hide" );
    $( ".divider" ).addClass( "d-sm-none d-md-block" );
});

然后,(仅使用其中一行尝试):

function myTexhide() {
   var element = document.getElementsByTagName("separator");
   element.addClass( "text-hide" );
}

,并且用单引号代替双引号。

然后使用此版本:

jQuery(window).ready(function(){
$( ".separator" ).addClass( "text-hide" );
});

这:

jQuery(document).ready(function(){
    jQuery( '.separator' ).addClass( 'text-hide' );
});

但是似乎没有任何效果。

我显然想念一些东西。包装说明的错误代码或错误代码组合。非常感谢您的帮助。

谢谢。

1 个答案:

答案 0 :(得分:0)

jquery冲突可能存在一些问题。 您可以分享链接吗?