Czy istnieje sposób na wywołanie zdarzenia tekstowego w przypadku, gdy użytkownik zmieni linię, na której znajduje się kurtyna, na przykład klikając lub używając strzałek w górę/w dół? Czy to nie jest możliwe w JavaScript? Znalazłem sposoby znalezienia/ustawienia aktualnej pozycji karetki, ale to nie jest to, czego potrzebuję ...Zdarzenie wystrzeliwania, gdy karetka porusza się między wierszami w tekście
Odpowiedz
Wygląda na to, że musisz zarejestrować kilka wydarzeń związanych z obszarem tekstowym. z góry mojej głowy, zdarzenia kliknięcia i zdarzenia keypress z wieloma wartościami klucza. Czy potrzebujesz używać czystego javascripta, czy masz jakieś biblioteki javascript do wykorzystania?
Potrzebujesz pomocy przy rejestracji wydarzeń? lub potrzebujesz pomocy w znalezieniu pozycji opiekuna podczas jednego z wydarzeń? (spójrz na link Andy'ego) lub czy odpowiedź na oba moje pytania brzmi "tak"?
edit
ok, ze jesteś komentarzach których przebywa ok z jquery i plugin fieldselection uniemożliwia ponowne wynalezienie koła.
- zidentyfikować wszystkie klawisze klawiatury, kliknięcia myszą,? Skopiować wklej? zdarzenia, które mogą przesuwać karetkę w polu tekstowym. Navigate and select portions of text, wikipedia
- podczas imprezy użyj wtyczki fieldselection, aby uzyskać nową pozycję karetki.
- użyć aktualnej pozycji daszka & & rozmiar czcionki & skrzynki & Rozmiar tekstu fizyczny & liczyć & linebreak celu ustalenia, czy masz włączony do nowej linii.
- Jeśli zmienisz linie, uruchom niestandardowe zdarzenie jQuery, aby wykonać wybraną pracę.
// jQuery 1,7
$(document).ready(function(){
var currentLine = -1;
$("#textAreaID").on("keypress", function(evt){
if(evt.which === 40 || ...){
//down arrow key, enter key, page down key, all will move the caret to a newline
$(this).trigger("newline");
}else{
//a ton of text in a fixed width textarea will move the cursor to a newline
$(this).trigger("checkForNewline");
}
}).on("click checkForNewline", function(evt){
var jqElem = $(this);
//fieldSelection plugin call
var range = jqElem.getSelection();
if(range["row"] && range["row"] !== currentLine){
currentLine = range["row"];
jqElem.trigger("newline");
}else{
var handTypedNewlines = jqElem.val().split(/\r\n|\r|\n/);
var userTypedRowcounts = Math.floor(wholeString.length/jqElem.cols) + (handTypedNewlines instanceof 'object')?handTypedNewlines.length:0;
if(userTypedRowcounts != currentLine){
currentLine = userTypedRowcounts;
jqElem.trigger("newline");
}
}
}).on("newline", function(evt){
// do your work, caret is on a newline.
});
});
odwołuje przepełnienie stosu.
http://stackoverflow.com/q/1937120/176818 i tutaj jest przykładem wtyczki jQuery fieldselection http://laboratorium.0xab.cd/jquery/fieldselection/0.2.3-test/test.html – DefyGravity
Zobacz moje komentarze powyżej ...Wygląda na to, że powinno to być wykonalne, a sposobem na to jest śledzenie kliknięć i naciśnięć klawiszy, a następnie porównywanie poprzedniej i bieżącej linii i sprawdzanie, czy nastąpiła zmiana? Powinienem to rozgryźć, gdy zobaczę strategię. – NumerousHats
I tak, nie mam zastrzeżeń do bibliotek. Prawie na pewno będę używał jQuery do innych aspektów projektu (jeśli zdecyduję się zrobić to jako webapp ...) – NumerousHats
- 1. Zdarzenie dla zmian w tekście
- 2. Ekran nie porusza się poprawnie, gdy klawiatura porusza się w górę - android
- 3. GIF zatrzymuje animację, gdy mysz do gier się porusza.
- 4. Odstęp między wierszami
- 5. Brak współrzędowania między warstwami, podczas gdy Bakground porusza się z różną prędkością
- 6. Rozmieszczenie w siatce i interlinię między wierszami
- 7. Zdarzenie, gdy składnik staje się widoczny
- 8. Pionowa przestrzeń między wierszami startowymi
- 9. jQuery - Zdarzenie, gdy atrybut węzła zmienia się
- 10. Zawartość UITableViewCell porusza się w pobliżu
- 11. Pokaż wszystkie kolumny zmieniające się między dwoma wierszami
- 12. SQL: znajdowanie różnic między wierszami
- 13. Zmniejszanie odstępów między wierszami w TextBlock/FlowDocument
- 14. Manipulowanie odstępami między wierszami w LaTeX
- 15. UILabel negatywne odstępy między wierszami
- 16. Dodawanie pionowej przestrzeni między wierszami w vim
- 17. Jak zmienić odstępy między wierszami w TextBlock?
- 18. Wykładanie tekstowe w systemie Android między wierszami
- 19. Zmienić odstęp między wierszami w tytule ggplot?
- 20. separacja między wierszami w układzie tabeli
- 21. Ustawianie minimalnego odstępu między wierszami w kolekcjiView
- 22. Jaki stan jest przechowywany między wierszami JavaScript?
- 23. Webkit i Safari uruchamiają mysz, nawet gdy mysz się nie porusza
- 24. Funkcja JavaScript nie zwraca obiektu, gdy występuje przerwa między wierszami między instrukcją return a obiektem?
- 25. UIPopoverController porusza się dziwnie na iOS 7, gdy pojawia się klawiatura
- 26. z buforem prądu nie porusza się punkt
- 27. Wykrywanie kiedy mysz się nie porusza
- 28. Zdarzenie, gdy window.location.href zmienia
- 29. Android Toast porusza się po ekranie
- 30. Wyrównanie tekstu w tekście w jednym wierszu
możliwe duplikat [Znajdź wartości bieżącej linii z
@AndyE Istnieje znaczna różnica między \ n a linią, którą użytkownik widzi w obszarze tekstowym. Na przykład ten komentarz nie ma pojedynczego znaku nowej linii, ale jestem już w trzecim wierszu tekstu. Odpowiedź: – Esailija
@Elpejija: OP nie był wystarczająco szczegółowy, abyśmy mogli powiedzieć, ale warto go zgłaszać na wszelki wypadek. czego on szuka. Dlatego w komentarzu jest napisane * "możliwy duplikat ..." *. –