Le volet ne devrait pas être retiré, lorsque l'utilisateur clique sur le volet (calculatrice). Lorsque vous cliquez sur le volet, à la fois le volet et l'élément du corps va recevoir l'événement onclick. L'événement onclick du volet est déclenché en premier et celle du corps est déclenchée seconde. Cela signifie que lorsque vous cliquez sur le volet, il va disparaître en raison de la deuxième et indirecte clic sur le corps. Donc, il ya un problème. Nous devons faire la différence entre cliquant sur l'élément de corps seul et en cliquant sur le volet (et le corps dans une séquence).
L'attribut onclick du volet (DIV externe) est comme suit: onclick = "leftPaneShown = true" Alors, quand le volet est cliqué, la variable leftPaneShown est définie sur true. Ceci est une variable globale dans le script. Il y a une fonction qui supprime le volet. Lorsque vous cliquez sur l'élément de corps seul, la fonction est appelée. Lorsque vous cliquez sur le volet, la fonction est appelée seulement après la déclaration ci-dessus (variable) pour l'attribut onclick du volet (DIV) a été fixé. Ceci est la fonction: la fonction removePane () {if (leftPaneShown == false) {x = document.
getElementById ('Calc') style.left;. x = parseInt (x); TL = self.setInterval ("shiftLeft ()", 10); } //Réinitialiser le booléen leftPaneShown variables leftPaneShown = false; } La valeur par défaut pour la variable leftPaneShown ci-dessus est fausse. La fonction première de tous les chèques si la variable est fausse. Si elle est fausse, cela signifie que l'élément de corps a été cliqué; il va à retirer le volet. Si il est vrai que cela signifie le volet a été cliquée. Le volet a reçu le premier clic avant que le corps. Donc, le volet définir la variable à true.
Quand il est vrai, l'instruction if dans cette fonction ne supprime pas le volet. La valeur de la variable est vrai que lorsque le volet est cliqué. Il doit toujours être fausse