Ich bin ein Javascript-Neuling. Ich habe eine Reihe von Schaltflächen in meiner iOS App. Einige von ihnen haben Buchstaben in ihren Namen; Andere sind nur mit Nummern benannt. Ich versuche ein UI-Testskript zu schreiben. Im Skript habe ich ein Array namens buttons, das ein Array von UIAElement-Objekten darstellt, die UIButtons entsprechen.Javascript automatische Typumwandlung verursacht Probleme in meinem iPhone Automator-Skript
Wenn ich den folgenden Code, es funktioniert großartig:
buttons["clr"].tap();
Das möchte ich auf die Schaltfläche mit dem Titel „clr“ tippen, und es tut.
Aber ich kann keine Möglichkeit finden, die Schaltfläche mit Titel "2" zu tippen. Wenn ich den folgenden Code, ist es nicht für mich verhalten:
buttons["2"].tap();
Was passiert, ist, dass einige Stück des Systems auf den Button mit dem Index 2 in der Matrix tippen entscheidet. Das ist nicht dasselbe wie die Taste, deren Name 2 ist.
Kann jemand erklären? Und gibt es eine Möglichkeit, es zu zwingen, meine Saite als Saite zu behandeln? Ich habe ein paar Varianten ausprobiert, und keine davon hilft z.B.
EDIT: Benennung es etwas neben 2 wäre möglich, aber peinlich. Die App ist ein Taschenrechner, und 2 scheint wie der richtige Name für den Schlüssel, der genau das tut. Diese Namen werden verwendet, um die App für Menschen mit Behinderungen zu präsentieren. Ich kenne nicht alle Details, aber ich glaube, dass "2" auf lange Sicht besser funktionieren wird als "zwei".
Als Antwort auf die Frage, wie ich meine Array bevölkern, ist es über Apple's UIAElement class. Genauer gesagt, ich habe ein Objektfenster, das auch ein UIAElement ist, und ich bevölkern es durch
var buttons=window.buttons();
JavaScript-Array-Index * * Strings sind. Kannst du dein Element neben "2" etwas nennen? – alex
Wie bevölkern Sie Ihr Array? –