I'm yet to be an expert in jQuery :) But I would solve that like this:
$(".port").click(function() {bigchart($(this).attr('port-id') )}); now in your html code, I guess its like: <div id=port1> change to <div class=port port-id=1> Feijó timothytoe escreveu:
I think I submitted a half-done version of this message by accident a few minutes ago. Sorry. This works: $("#port0").click(function() {bigchart(0)}); $("#port1").click(function() {bigchart(1)}); $("#port2").click(function() {bigchart(2)}); $("#port3").click(function() {bigchart(3)}); $("#port4").click(function() {bigchart(4)}); I try to roll it up like this: for (i=0;i<5;i++) { $("#port"+i).click(function() {bigchart(i)}); } But the closure gets me. When the function is called, i is 5 for any of the buttons. What is the elegant solution here?