Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Przesuwane menu
sestems
post 18.02.2012, 21:43:16
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 18.02.2012

Ostrzeżenie: (0%)
-----


Witam wszystkich potzrebuje pomocy z moja strona,wygląda ona tak.



Chicałbym aby po wcisnieciu któregos z odnosników wszsttko szło do góry(logo oraz menu) mam to w jednym divie 'menu' oraz aby wysweitlana byla strona zalenie od właczonego odnosnika.Lecz juz na samym poczatku napotkałem problem.Chciałem poprostu sprawdzic czy działa javascript
wiec w zalaczniku head napisałem tak:
Kod
<script type="text/javascript">
function ruch() {
    document.getElementById("menu").style.marginTop="10px";
}
</script>

a w odnosniku dodałem
Kod
onclick="ruch()"

Pomoze ktos w napisaniu tego skryptu?

Ten post edytował sestems 18.02.2012, 21:44:32
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 10)
kamil4u
post 18.02.2012, 21:52:52
Post #2





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Daj link do dema.


--------------------
Go to the top of the page
+Quote Post
sestems
post 18.02.2012, 22:07:41
Post #3





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 18.02.2012

Ostrzeżenie: (0%)
-----


Wrzucilem bez moich modyfikacji w js opisanych wyżej bo tak nie działały.
http://www.wojciech-polus.yoyo.pl
Go to the top of the page
+Quote Post
kamil4u
post 18.02.2012, 22:40:53
Post #4





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Wszystko działa. Błąd musi być gdzieś indziej...

http://jsfiddle.net/ChBEN/ - popatrz na link "o nas". Dodałem return false;, żeby nie było skoku.


--------------------
Go to the top of the page
+Quote Post
sestems
post 19.02.2012, 14:04:18
Post #5





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 18.02.2012

Ostrzeżenie: (0%)
-----


Wielkie dzięki.Dziwne rzeczy naprawdę nie wiem co miałem źle ale teraz działa.Z animacją sobie poradzę.Jeszcze mam pytanie odnośnie drugiej sprawy.Co do wyświetlania treści.Chciałem to zrobić tak ze porostu div z treścią będzie ukryty po naciśnięciu odpowiedni będzie sie pokazywał.Ale czy nie ma innej możliwość?Ta troche prymitywna mi sie wydaje.Nie wiem moze sie myle.

Kurde nie wiem co jest źle znow chiałem zrobic płynne przesuniecie tego diva i znow nie działa.Oto kod:
Kod
function ruch() {
    i="160px";
    document.getElementById("menu").style.marginTop= i -"2px";
    if (i=5) {
        setTimeout("ruch()", 100);
    }
}

Prosze o podpowiedź co jest nie tak.

Z wczytywaniem plików sobie poradziłem użyłem jquery oraz load(file).Pozostał mi problem z animacja zmniejszenia marginesu górnego chciałbym aby to wykonywało ie płynniej jednak moj kod nie działa.

Ten post edytował sestems 19.02.2012, 00:11:17
Go to the top of the page
+Quote Post
kamil4u
post 19.02.2012, 14:18:16
Post #6





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Nie możesz sobie porównywać int i string tak nierozważnie smile.gif

Kod
if (i=5) { --> czy "160px"=5

po pierwsze ==, po drugie chyba powinieneś porównać liczby.

Kod
i -"2px" --> "160px"-"2px"

Komputer to nie człowiek, to coś nie wie co to jednostki i jak na nich operować. Zawsze operuj na liczbach i dodawaj na końcu "px"

Cytat
Chciałem to zrobić tak ze porostu div z treścią będzie ukryty po naciśnięciu odpowiedni będzie sie pokazywał.Ale czy nie ma innej możliwość?Ta troche prymitywna mi sie wydaje.Nie wiem moze sie myle.
Jeżeli zrobisz to dobrze to jest to dobry pomysł.

--edit--
Co do tej animacji. Przy każdym wywołaniu funkcji nadpisujesz i, więc Twój warunek nigdy się nie spełni.

Ten post edytował kamil4u 19.02.2012, 14:19:44


--------------------
Go to the top of the page
+Quote Post
sestems
post 19.02.2012, 16:52:09
Post #7





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 18.02.2012

Ostrzeżenie: (0%)
-----


Cholera nie moge sobie z tym poradzic mam teraz taki kod.
Kod
var i=190;
function ruch() {
    document.getElementById("menu").style.marginTop= i - 1 +"px";
    if (i >= 2) {
        setTimeout("ruch()", 1000);
    }
}

I poporstu zmniejsza mi raz marginTop o 1 px i koniec.
Go to the top of the page
+Quote Post
kamil4u
post 19.02.2012, 17:31:58
Post #8





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Teraz nie zmniejszasz i, tylko odejmujesz o i - 1.

Kod
= i - 1 +"px";

-->
Kod
= (--i)+"px";


--------------------
Go to the top of the page
+Quote Post
sestems
post 19.02.2012, 17:45:58
Post #9





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 18.02.2012

Ostrzeżenie: (0%)
-----


Ten sam efekt;/
Go to the top of the page
+Quote Post
kamil4u
post 19.02.2012, 18:01:50
Post #10





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Jak Ty to testujesz? http://jsfiddle.net/ChBEN/1/ Animacja jest wolna bo tak ustawiłeś - 1px -> 1s

Postaraj się pisać uważniej.


--------------------
Go to the top of the page
+Quote Post
sestems
post 19.02.2012, 18:19:49
Post #11





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 18.02.2012

Ostrzeżenie: (0%)
-----


Okej wielkie dzienki działa jak powinno.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 11:17