Tengo el siguiente código en mi archivo javascript:

$(document).ready(function(){
    $("#shuffle, #game_over_shuffle").bind("click", shuffleBoard);
});

Esto baraja algunas cosas en un div. Ahora también tengo un sistema de puntuación que se ve así:

// Ad score
var score = 0;

Puede usar una pista, pero eso reducirá su puntaje (corte de una función más grande):

// Remove 500 points when used
    score -= 500;
      $('#score').text(score);

Todo esto funciona, pero ahora quiero restablecer la puntuación a 0 cuando se usa el sufle. He intentado esto:

$("#shuffle, #game_over_shuffle").bind("click", shuffleBoard, resetScore);

Tenga en cuenta que agregué resetScore e hice una nueva función para restablecer la puntuación:

function resetScore(){
    score = 0;
      $('#score').text(score);
};

Pero esto no restablece el puntaje a 0. ¿Qué me estoy perdiendo?

Saludos cordiales, Maurice

================================

Encontré una solución yo mismo. En lugar de crear una nueva función, extendí una existente (usando el mismo enlace) estableciendo el puntaje en 0. ¡Gracias a todos por tratar de ayudarme!

0
Maurice 12 sep. 2011 a las 02:27

3 respuestas

La mejor respuesta

Encontré una solución yo mismo. En lugar de crear una nueva función, extendí una existente (usando el mismo enlace) estableciendo el puntaje en 0. ¡Gracias a todos por tratar de ayudarme!

0
Maurice 17 sep. 2011 a las 10:12

Solo puede pasar un controlador de eventos al método bind. Tendrá que llamar a esas dos funciones desde una función anónima:

$("#shuffle, #game_over_shuffle").bind("click", function() {
    shuffleBoard();
    resetScore();
});

Aquí hay un ejemplo en vivo con este código: http://jsbin.com/iresem/edit

1
v42 12 sep. 2011 a las 00:29

Si está utilizando jQuery 1.5, puede aprovechar los nuevos Objetos diferidos

Algo como esto:

var deferred = $.Deferred();
deferred.done(shuffleBoard).done(resetScore);

$("#shuffle, #game_over_shuffle").bind("click", function() {
    deferred.resolve();
}
0
kaychaks 11 sep. 2011 a las 22:57