It seems that a batch.js file provided by confluence has jQuery functions, but I can't seem to use them. I'm not sure what I'm doing wrong if anything. This is a quick sample test I made, but it doesn't work even though batch.js is is called in every page. We are using Conlfuence 3.5.2.
{html}
<div id="test1">hello world</div>
<br/>
<input type="button" id="hide" value="hide">
<input type="button" id="show" value="show">
<script type="text/javascript">
$(document).ready(function(){
$('#hide').click(function(){
$('#test1').fadeOut();
});
$('#show').click(function(){
$('#test1').fadeIn();
});
});
</script>
{html}
See the Confluence UI Guidelines. The guidelines suggest wrapping all custom jQuery in AJS.toInit() if you require the code to be fired after DOMReady.
So your code would be:
AJS.toInit(function(){
AJS.$('#hide').click(function(){
AJS.$('#test1').fadeOut();
});
AJS.$('#show').click(function(){
AJS.$('#test1').fadeIn();
});
});
For bonus points, you can structure your toInit function like this:
(AJS.toInit(function($) {
// Access AJS.$ by just using '$'
$("#selector").html("Hello, World");
}))(AJS.$);
and it will save you a bunch of keystrokes not having to prefix '$' with 'AJS.' every single time. :-)
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
jquery dollar has been "noConflict"ed to AJS.$, so instead use:
AJS.$(function () {
// page load...
})
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Should my code look like this?
<script type="text/javascript">
AJS.$(function(){
$(document).ready(function(){
$('#hide').click(function(){
$('#test1').fadeOut();
});
$('#show').click(function(){
$('#test1').fadeIn();
});
});
});
</script>
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.