在joomla中切换div js不起作用

时间:2012-08-24 14:17:14

标签: javascript joomla

我的toggle div js在joomla中不起作用。当js代码位于页面的头部时,它工作正常,当它在外部文件中时它没有。我所有的链接似乎都很好:

Joomla模板 - Index.php:

<?php
$document = &JFactory::getDocument();
$document->addScript( '/js/togglediv.js' )
 ?>

Joomla模板 - templateDetails.xml:

<filename>js/togglediv.js</filename>

togglediv.js:

function toggle() {
var ele = document.getElementById("box");
var text = document.getElementById("displayText");
if(ele.style.display == "block") {
        ele.style.display = "none";
    text.innerHTML = "show";
}
else {
    ele.style.display = "block";
    text.innerHTML = "hide";
}

}

HTML:

<div id="footer">
<a id="displayText" href="javascript:toggle();">show</a>    
<div id="box">hello</div>
</div>

CSS:

#box {
width: 304px;
height: 40px;
float: left;
position: relative;
border: 1px solid green;
display: none;
}

谢谢!

1 个答案:

答案 0 :(得分:0)

您需要提供addScript()的完整地址。使用JURI:

$document->addScript( JURI::Root().SERVER_PATH_TO_JS_FOLDER.'/js/togglediv.js' )

HTML中的JS有点过时了。试试这个:

<a id="displayText" href="javascript:void(0);" onclick="toggle()">show</a>

id box似乎没有任何内容。