views:

2810

answers:

3

Looking at the "highlight" JQuery effect:

http://docs.jquery.com/UI/Effects/Highlight

You can change the background color of any DIV to fade in/out

However, the example is to "highlight" on a "click" event

$("div").click(function () {
      $(this).effect("highlight", {}, 3000);
});

How can I programatically call the highlight method as though it was a function within my code (instead of activate on a 'click' event)?

+5  A: 
$("div").effect("highlight", {}, 3000);

As pointed by JorenB this will highlight all the div's in your page.

If you only want to highlight one div like:

<div id="myDiv"></div>

You should do:

$("div#myDiv").effect("highlight", {}, 3000);

If you want to highlight all div's with a specific classe you cand do:

<div id="myDiv1" class="myClass"></div>
<div id="myDiv2" class="myClass"></div>

$("div.myClass").effect("highlight", {}, 3000);

For more information on selectors see JQuery Selectors.

Daniel Moura
Which will highlight all divs in your page ;-) To clarify: give the div an id and use `$("div#{yourid}")` to jQuery it.
JorenB
just a question, because I'm not 100% sure, but wouldn't 'div#myDiv' actually be slower than just '#myDiv'?
TM
+3  A: 

it would simply be

$([your selector]).effect("highlight", {}, 3000);
Russ Cam
+1  A: 

You can also achieve that by triggering the click event, if you have that in your click handler anyway:

$('div').click();

or:

$('div').trigger('click');
karim79