2010-02-17 5 views

Répondre

1

Je ne suis pas un expert Google Desktop, je viens d'avoir un peu de temps sur mes mains! De la documentation basicElement itself is never instantiated; it just provides a set of common properties and events for its descendant UI objects.

Par conséquent, il semble qu'un objet JavaScript ne sera jamais une instance de basicElement.

Cependant, vous pouvez toujours vérifier si l'objet JavaScript implémente l'un des noms basicElements more obscure method or property - cela devrait vous donner une indication raisonnable que l'objet avec lequel vous travaillez est un basicElement. En utilisant quelque chose comme ceci:

if((obj != 'undefined') && (obj != null) && ("hitTest" in obj)){ 
    alert('Probably implements basicElement'); 
} else { 
    alert('Not a basicElement'); 
} 
+0

Qu'en est-il de quelque chose qui est une instance de la classe View, par exemple? – Claudiu

+0

J'ai parcouru rapidement l'exemple de code GD et la seule classe GD que j'ai trouvé que vous pourriez instancier directement est quelque chose appelé "DetailsView" et cela est utilisé pour les choses XML. Ma conjecture est que cela signifie que instanceof est un peu une impasse pour déterminer le type d'un objet spécifié. Vous auriez besoin de faire quelque chose comme ("obj instanceof (new ViewDetails())") pour que l'instance fonctionne. Par conséquent, je pense que pour la plupart des classes GD, vous devrez rechercher l'existence de propriétés/méthodes connues pour déterminer l'identification d'un objet. –

Questions connexes