2010-11-17 4 views
0

je retire les variables globales dans le Javascript qui est utilisé dans mon Rails/vues/show.html.erbfonction Javascript onReady pour appeler la fonction Namespace

Le javascript que j'utilise est

var App = {}; 
App.UserSnapShot = function() { 
    var _body, _detailEl, _selectedLinkEl; 

    var _init = function() { 
    _body = $$("body")[0]; 

    $$(".user-link").each(function (el) { 
     el.observe("mouseover", function (event) { 
     _selectedLinkEl = el; 
     _detailEl = event.element().next(); 
     _detailEl.show(); 
     _body.observe("mouseover", _bodyMouseOverFunction); 
     }); 
    }); 
    }; 

    var _bodyMouseOverFunction = function (event) { 
    if (event.element() != _selectedLinkEl && 
     event.element() != _detailEl && 
     !event.element().ancestors().include(_detailEl)) { 
     _detailEl.hide(); 
     _body.stopObserving("mouseover", _bodyMouseOverFunction); 
    } 
    }; 

    return { 
    init: function() { 
     _init(); 
    } 
    }; 
}(); 

J'ai besoin d'appeler ma fonction App.UserSnapShot.init(), grâce à la fonction onready de la même .., Pour que cela fonctionne .. Comment puis-je ajouter une fonction onReady ici.

Pls donner quelques suggestions

+0

TOUS CEUX SOUSCRIT !! AAAAAAHHHHHHH !!!!! –

+1

@jacob pour privé varaible j'ai donné _variablename – useranon

+0

qu'est-ce que vous entendez par 'onready fonction de la même chose? S'il vous plaît expliquer ce que vous voulez plus en détail. – galambalazs

Répondre

2

Vous voulez dire?

App.onReady = function() { 
    App.UserSnapShot.init(); 
}; 

document.observe("dom:loaded", App.onReady); 
-1

En utilisant jQuery ...

$ (document) .ready (function() {// Insérer le code pour lancer sur le document charge ici });

+0

'$$ (" body ")' il utilise clairement Prototype ... – galambalazs

Questions connexes