Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [javascript, css] problem na IE7
soska66
post 7.06.2007, 12:13:45
Post #1





Grupa: Zarejestrowani
Postów: 132
Pomógł: 1
Dołączył: 3.02.2005

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


Jak zwykle problem dotyczy IE7 (nie wiem jak na starszych wersjach, zakladam, ze skrypt zachowuje sie tak samo.

Oto kod
  1. function twist( recipient,recipientcheck)
  2. {
  3. divobj = document.getElementById( recipient );
  4. checkbox = document.getElementById( recipientcheck );
  5.  
  6. if(checkbox.checked){
  7. divobj.style.position = "relative";
  8. divobj.style.visibility = "visible";
  9. }else{
  10. divobj.style.position = "absolute";
  11. divobj.style.visibility = "hidden";
  12. }
  13. }


W formie mam diva, ktory pojawia/chowa sie w zaleznosci czy zaznaczy/odznaczy sie checkboxa.

  1. <input type="checkbox" name="recipientcheck" id="recipientcheck" onclick="java script:void twist('recipient', 'recipientcheck');">
  2. <div style="visibility:hidden;position:absolute;" id="recipient">
  3. <table border="0" cellspacing="8" cellpadding="0" width="100%" align="left" style="margin-top: 5px">
  4. <tr>
  5. <td colspan="2"><b>Please enter details of a person that you want to send Voucher to:</b></td>
  6. </tr>
  7. <tr>
  8. <td align="right" width="200">First Name</td>
  9. <td align="left"> <input class="formbits" name="recipientfname" size="35" maxlength="35" value=""> </td>
  10. </tr>
  11.  
  12. </div>


Po zaznaczeniu checkboxa, w IE widac wyraznie, ze strona sie rozszerzam, ale nie pojawia sie 'input' w miejscu rozszerzenia. Wyglada na to, ze dziala atrybut position, al enie dziala visibility (tak jakby caly czas byl hidden)

jesli jednak na sztywno wpisze w divie style="visibility:visible", forma jest widoczna... ale tylko do momentu zaznaczenia checkboxa - wtedy odpalany jest skrypt js i problem z pusta przestrzenia powraca.
Wszystko pieknie smiga na firefoxie i operze

Ten post edytował soska66 7.06.2007, 12:14:14
Go to the top of the page
+Quote Post
^bmb
post 7.06.2007, 12:59:44
Post #2





Grupa: Zarejestrowani
Postów: 69
Pomógł: 2
Dołączył: 12.12.2005

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


nie mam badzIEwia 7 ale pod 6 działa ok.

wyrzuciłem tylko z onclick java script: void bo niepotrzebne

czyli onclick="twist('recipient', 'recipientcheck');"


--------------------
Cogito Ergo Sum
Go to the top of the page
+Quote Post
soska66
post 7.06.2007, 13:17:10
Post #3





Grupa: Zarejestrowani
Postów: 132
Pomógł: 1
Dołączył: 3.02.2005

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


no u mnie nadal nie dziala... ale wlasnie odkrylem, ze to jednak wina atrybutu position. Jak na sztywno wstawie 'relative' wyrzuce ze skryptu linikji odpowiadajace za zmiane position, dziala dobrze... no z tym, ze wtedy wizualnie jest do kitu, bo pusta przestrzen jest widoczna gdy checkbox jest odznaczony

Ale jak to naprawic to juz nie wiem :/

Ten post edytował soska66 7.06.2007, 13:17:29
Go to the top of the page
+Quote Post
^bmb
post 7.06.2007, 13:30:07
Post #4





Grupa: Zarejestrowani
Postów: 69
Pomógł: 2
Dołączył: 12.12.2005

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


Cytat(soska66 @ 7.06.2007, 12:17:10 ) *
no u mnie nadal nie dziala... ale wlasnie odkrylem, ze to jednak wina atrybutu position. Jak na sztywno wstawie 'relative' wyrzuce ze skryptu linikji odpowiadajace za zmiane position, dziala dobrze... no z tym, ze wtedy wizualnie jest do kitu, bo pusta przestrzen jest widoczna gdy checkbox jest odznaczony

Ale jak to naprawic to juz nie wiem :/


a mozesz wkleic caly kod html w ktorym ci to nie działa?? bo przy samym kawałku który poprzednio wkleiłeś raczej nie ma prawa stwarzać problemów...chyba ze to jedno z "usprawnien" IE 7 winksmiley.jpg


--------------------
Cogito Ergo Sum
Go to the top of the page
+Quote Post
soska66
post 7.06.2007, 13:42:37
Post #5





Grupa: Zarejestrowani
Postów: 132
Pomógł: 1
Dołączył: 3.02.2005

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


Caly HTML to kilkanascie dodatkowych 'zawsze widzialnych' input boxow przed tym checkboxem i divem (wiec nie ma sensu zasmiecac posta calym kodem) ... Plus submit na samym dole (ponizej omawianego diva). To caly html
Go to the top of the page
+Quote Post
revyag
post 7.06.2007, 16:04:59
Post #6





Grupa: Przyjaciele php.pl
Postów: 2 258
Pomógł: 16
Dołączył: 21.09.2004
Skąd: Kielce

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


Zamiast visibility użyj display:block, display:none.


--------------------
-------------

------
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: 1.07.2025 - 19:00