Podobnie jak użycie click()
do wyzwalania zdarzenia kliknięcia elementu, czy istnieje sposób symulacji wpisywania ciągu znaków?Jak symulujesz pisanie przy użyciu jQuery?
Odpowiedz
Szukasz sposobu, aby wywołać związane z typowania zdarzeń lub czy chcesz dołączyć tekst do kontenera, aby wyglądał, jakby ktoś pisał? Jeśli szukasz wydarzeń, to @Nick jest absolutnie poprawny w sugerowaniu metod wyzwalania zdarzenia. Jeśli to drugie, będziesz chciał użyć timera do zastąpienia tekstu/html kontenera kolejnymi podciągami tekstu. Możesz uzyskać lepszy efekt, dołączając kolejne elementy zawierające każdą literę, jeśli tekst jest bardzo długi - zmniejszyłoby to miganie, gdy tekst zostanie zastąpiony, a układ na chwilę się zmieni.
EDIT: Zamierzałem dodać przykład, ale okazało się, że istnieje już wtyczka: jTypeWriter.
Można użyć tych zdarzeń, w zależności od tego, co chcesz:
Jeśli naprawdę chcesz, aby symulować pisania (czyli w tym wyzwalanie zdarzeń i dodanie tekstu do elementu wejściowego lub textarea), można użyć jQuery symulować rozszerzoną wtyczkę:
http://j-ulrich.github.com/jquery-simulate-ext
Następnie można użyć
$('input').simulate("key-sequence", {sequence: "This is a test", delay: 10});
symulować wpisywanie tekstu "This is a test"
z 10ms opóźnienia pomiędzy każdym naciśnięciu klawisza.
Nota prawna: Jestem autorem wtyczki.
Dzięki za rekomendację, chociaż wszystko, czego potrzebuję, to wypełnienie obszaru tekstowego (bez potrzeby animacji). Zdałem sobie sprawę, że mogę używać innerHTML lub co, głupio mnie :) – Fabian
Wygląda na to, że jTypeWriter może być martwy. Przynajmniej nie mogę go nigdzie znaleźć. Ale natknąłem się na alternatywną wtyczkę jQuery, która wygląda ładnie: [TypeType] (http://iamdanfox.github.io/typetype/). – Matt