0

トグル 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;
}

ありがとう!

4

1 に答える 1

0

You need to provide the full address for addScript(). Use JURI for this:

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

Your JS in the HTML is a bit off. Try this:

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

There also doesn't seem to be anything with the id box.

于 2012-08-24T14:22:04.230 に答える