Grüße stackoverflow - Ich benutze jQuery .click, die auf Touchscreen-Geräten nicht auslöst. Ich habe das Click-Ereignis mit .touchstart funktioniert, aber das ist nicht ideal, da es auch ausgelöst wird, wenn der Benutzer auf den Bildschirm tippt, um einen Bildlauf zu starten.jQuery .touch und .click funktioniert nicht, aber Touchstart tut? [iOS]
Gibt es etwas, das ich vermisse, würde stoppen. Klicken Sie auf ein Touchscreen-Gerät oder .touch?
Grundlegende Geige here.
HTML:
<form class="form-horizontal">
<div class="container-fluid constraint">
<h3>Style</h3>
<div class="control-group">
<label class="checkbox">
<input type="checkbox" data-facet="28" data-constraint="2" data-cat="205" value="1">
<span>Anti-slip</span>
</label>
<label class="checkbox">
<input type="checkbox" data-facet="5" data-constraint="2" data-cat="205" value="1">
<span>Cement/Concrete</span>
</label>
<label class="checkbox">
<input type="checkbox" data-facet="18" data-constraint="2" data-cat="205" value="1">
<span>Contemporary</span>
</label>
<label class="checkbox">
<input type="checkbox" data-facet="23" data-constraint="2" data-cat="205" value="1">
<span>Encaustic</span>
</label>
<label class="checkbox">
<input type="checkbox" data-facet="17" data-constraint="2" data-cat="205" value="1">
<span>Hexagon</span>
</label>
<label class="checkbox">
<input type="checkbox" data-facet="24" data-constraint="2" data-cat="205" value="1">
<span>Large Format</span>
</label>
<label class="checkbox">
<input type="checkbox" data-facet="48" data-constraint="2" data-cat="205" value="1">
<span>Marble</span>
</label>
<label class="checkbox">
<input type="checkbox" data-facet="29" data-constraint="2" data-cat="205" value="1">
<span>Mosaic</span>
</label>
<label class="checkbox">
<input type="checkbox" data-facet="26" data-constraint="2" data-cat="205" value="1">
<span>Outdoor</span>
</label>
<label class="checkbox">
<input type="checkbox" data-facet="25" data-constraint="2" data-cat="205" value="1">
<span>Slim Porcelain</span>
</label>
<label class="checkbox">
<input type="checkbox" data-facet="4" data-constraint="2" data-cat="205" value="1">
<span>Stone</span>
</label>
<label class="checkbox">
<input type="checkbox" data-facet="22" data-constraint="2" data-cat="205" value="1">
<span>Traditional</span>
</label>
<label class="checkbox">
<input type="checkbox" data-facet="54" data-constraint="2" data-cat="205" value="1">
<span>Wood</span>
</label>
</div>
</div>
</form>
CSS:
.constraint {
margin-bottom: 20px;
}
.constraint h3 {
font-size: 24px;
font-weight: bold;
margin-bottom: 10px;
}
.constraint .control-group {
display: none;
}
jQuery:
$(document).on('click touch', '.constraint h3', function() {
$(this).next('.control-group').slideToggle(500);
});
Vielen Dank im Voraus für jede Hilfe!
'.click()' definitiv sollte auf mobilen Geräten arbeiten. [Hier] (https://www.html5rocks.com/de/mobile/touchandmouse/#toc-1) ist eine geordnete Liste der Ereignisse, die beim Berühren ausgelöst werden. –
Danke @BramVanroy, aber das Hinzufügen von 'cursor: pointer;', wie im möglichen Duplikat erwähnt, hat das Problem behoben. Sieht nach einem iOS-Bug aus. –