Examples: query, "exact match", wildcard*, wild?ard, wild*rd
Fuzzy search: cake~ (finds cakes, bake)
Term boost: "red velvet"^4, chocolate^2
Field grouping: tags:(+work -"fun-stuff")
Escaping: Escape characters +-&|!(){}[]^"~*?:\ with \, e.g. \+
Range search: properties.timestamp:[1587729413488 TO *] (inclusive), properties.title:{A TO Z}(excluding A and Z)
Combinations: chocolate AND vanilla, chocolate OR vanilla, (chocolate OR vanilla) NOT "vanilla pudding"
Field search: properties.title:"The Title" AND text
Beantwortet
onClick()-Events bzw. Section einklappen verhindern

Hallo,

ich weiß, meine Frage wurde hier:
https://yellow-devs.com/question/1259534291004559360/verhindern-dass-sich-sektionen-zuklappen
und hier:
https://yellow-devs.com/question/1260976749668208640/wie-kann-ich-erreichen-dass-die-sections-eines-dialogs-nicht-mehr-einklappbar-sind

vermeintlich schon beantwortet. Allerdings funktioniert keine der beiden Antworten, die mich syntaktisch auch verwirren ($j bzw $$) bei mir. Also noch einmal bitte, wie kann ich verhindern, dass onClick-Events ausgeführt werden wie zum Beispiel das Einklappen von Sektionen ?

Danke und Gruß Gabriel

  
  
Gepostet vor 2 Jahren
Stimmen Neuste

Antworten


Moin,

es geht um diesen Code:

$$('.jr-section-title.sectionName').each(function(element) {
            $(element).stopObserving('click');
});

"$$" ist im JobRouter ein "Shorthand" für die Funktion Prototype.Selector.select(expression, document), welche einen Selector entgegennimmt und ein Array an zutreffenden Elementen zurück gibt. Über diese wird dann mit dem "each" iteriert und jedem davon wird gesagt, nicht mehr auf Clicks zu hören. Heißt diese Funktion deaktiviert das onClick auf allen Sections (etwas nachdem häufiger mal gefragt wird).
Vorsicht bei den Shorthands bei JobRouter, das ist etwas Non-Standard. Meistens ist ja "$" der Shorthand für jQuery, bei JobRouter ist das aber nicht so. Daher wird jQuery bei JobRouter häufig ausgeschrieben.
"$j" bzw. "$" ist hier die Shorthand für ein PrototypeJS-Element. Das ist das was hier passiert.

Ausgeschrieben ist die Funktion also:

Prototype.Selector.select('.jr-section-title.sectionName').each(function(element) {
            Prototype.K(element).stopObserving('click');
});

Wenn du nur eine Section onClick-disablen willst dann brauchst du das "each" nicht, angenommen du hast folgende Section
file

Dann findet sich folgendes Element
file

Und kann disabled werden via

let elementX = Prototype.Selector.select('#testSection .jr-section-title.sectionName');
elementX[0].stopObserving('click');

Geht natürlich eleganter, aber zur Veranschaulichung sollte das helfen.

1
1
Gepostet vor 2 Jahren
Stefan Köngeter
309 × 7 Administrator
4K Ansichten
1 Antwort
vor 2 Jahren
vor 2 Jahren
Stichwörter