• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Jeden fragment przesuwa się w dół na stronie po uruchomieniu tejże strony.

+1 głos
216 wizyt
pytanie zadane 21 września 2016 w JavaScript przez Krzysiek_34 Mądrala (6,640 p.)
zamknięte 25 września 2016 przez Krzysiek_34

Witam.

Jeden fragment przesuwa się w dół na stronie głównej po uruchomieniu tejże strony na samym początku albo po przejściu z podstrony1 do strony głównej. Ta usterka występuje wtedy, gdy:
1. na samym początku uruchomię stronę główną albo...
2. przez 15 minut albo dłużej mam uruchomioną podstronę1 i z powrotem wracam na stronę główną.

Polega to na tym, że fragment na stronie głównej, na którym znajduje się Przycisk nr 1, Przycisk nr 2, Przycisk nr 3 i Przycisk nr 4 wraz z przyłączonym szarym tłem (Przycisk nr 1) albo czarnym tłem (pozostałe przyciski) przesuwa się nieco w dół. Podejrzewam, że gdzieś jest błąd w kodzie JavaScript.

index_test.php:
http://pastebin.com/FiYdwyKJ

style_test.css:
http://pastebin.com/7Zw9X7Tq

podstrona1.php:
http://pastebin.com/47YtpSYK

podstrona1_style.css:
http://pastebin.com/yJPpP0pj


Tak wygląda testowa strona główna:
http://imageshack.com/a/img922/7813/kLOzUb.jpg

Tak wygląda fragment na tej stronie, który przesuwa się w dół:
http://imageshack.com/a/img924/6884/L81Qta.jpg

Fragment zapisu w JavaScript, który prawdopodobnie może decydować o tej drobnej usterce to:

$("li[role='tab']").keydown(function(ev) {
	if (ev.which ==13) {
		$(this).click();
	}
});

$("li[role='tab']").keydown(function(ev) {
	if ((ev.which ==39)||(ev.which ==37)) {
		var selected= $(this).attr("aria-selected");
		if  (selected =="true") {
				$("li[aria-selected='false']").attr("aria-selected","true").focus();
				$(this).attr("aria-selected","false");

			  var tabpanid= $("li[aria-selected='true']").attr("aria-controls");
				  var tabpan = $("#"+tabpanid);
			$("div[role='tabpanel']:not(tabpan)").attr("aria-hidden","true");
			$("div[role='tabpanel']:not(tabpan)").addClass("hidden");

			tabpan.attr("aria-hidden","false");
			tabpan.removeClass("hidden");
		}
	}
});

Zauważcie, że w dwóch linijkach jest zapisana jakaś funkcja keydown jako dolny klucz czy coś takiego:

$("li[role='tab']").keydown(function(ev)
	if (ev.which ==13)
$("li[role='tab']").keydown(function(ev)
	if ((ev.which ==39)||(ev.which ==37))

Ten keydown może decydować o tym dolnym przesunięciu.

Podejrzewam, że tutaj gdzieś widnieje błąd w zapisie. Zamiast cyfr 13, 37 i 39 mam wpisać wartości zerowe? Potraficie poprawić błędy w tym fragmencie zapisu, aby podany fragment na stronie z przyciskami nie przesuwał się więcej w dół?

komentarz zamknięcia: Problem został rozwiązany i temat uważam za zamknięty

1 odpowiedź

0 głosów
odpowiedź 24 września 2016 przez Dmitrzak Dawid Użytkownik (680 p.)
Sam pisałeś tę stronę?
Mi to wygląda na jak albo skopiowany kod z internetu albo jakiś program typu FrontPage...

Ale do rzeczy. Usuń tu JS zrób obrazy nałóż hiperłącza. Po co ci przyciski w JS ?
komentarz 24 września 2016 przez Krzysiek_34 Mądrala (6,640 p.)

Skopiowałem fragment tego kodu JS z internetu. Mimo to, już wiem co było przyczyną, że tamten opisywany fragment z przyciskami przesuwał się nieco w dół w momencie uruchamiania strony. Przyczyną nie był jednak zapis kodu JS, tylko znajdujący się nad nim napis Strona internetowa, który był napisany czcionką PT Sans Caption. W głównym pliku index.php do tego napisu stosowałem akurat czcionkę PT Sans Caption, a w pliku index_test.php była domyślnie podana czcionka Verdana, bo myślałem, że widnieje gdzieś błąd w kodzie JS. Okazało się, że ta czcionka PT Sans Caption jest winna za to przesunięcie w dół tamtego fragmentu z przyciskami. Trochę bez sensu, ale jednak to nie zapis kodu JS był przyczyną.

Dzięki chociaż za próbę pomocy i temat uważam za zamknięty.smiley

Podobne pytania

0 głosów
1 odpowiedź 1,535 wizyt
pytanie zadane 29 września 2017 w HTML i CSS przez Krzysiek_34 Mądrala (6,640 p.)
0 głosów
1 odpowiedź 216 wizyt
0 głosów
1 odpowiedź 669 wizyt

93,733 zapytań

142,669 odpowiedzi

323,287 komentarzy

63,293 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...