Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [jQuery] fadeTo problem z IE
Spyder
post
Post #1





Grupa: Zarejestrowani
Postów: 269
Pomógł: 7
Dołączył: 12.10.2006
Skąd: Newcastle Upon Tyne

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


Witam

Próbuje dodac do mojego fadeTo dodatek typu

Wszystkie inne przegladarki

  1. $(this).fadeTo("slow", 1.0);


Tylko internet explorer

  1. <!--[if IE]>$(this).fadeTo("slow", 1.0, function() { this.style.removeAttribute('filter'); });<![endif]-->


lub bylo tak

  1. $(this).fadeTo("slow", 1.0 <!--[if IE]>, function() { this.style.removeAttribute('filter'); }<![endif]-->
  2. );


this.style.removeAttribute('filter'); jest wymagany do nadania czcionce gladkich krawedzi bo zrobieniu animacji problem jest taki ze to wywala skolei Firefoxa wiec musze tylko dodac ten kawalek jak jest IE tyle ze jak te dwa demka co dalem nie dzialaja. Moze ktos wie jak wykryc w tym przypadku ie i dodac ta linijke. THX

Ten post edytował Spyder 7.09.2009, 00:31:59


--------------------
Portfolio

Windows Vista Business SP1
DELL VOSTRO 200, Intel Core2 DUO E4600 2.4GHz, 3 GB RAM, ATI Radeon HD 2400 Pro, Screen DELL 22"

Pomogłem ci -> Kliknij "Pomógł" -> Dzięki
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
erix
post
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Efekt pojawiania w IE zależy właśnie od filtra; jeśli go usuniesz, nici z półprzezroczystości...


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

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
Spyder
post
Post #3





Grupa: Zarejestrowani
Postów: 269
Pomógł: 7
Dołączył: 12.10.2006
Skąd: Newcastle Upon Tyne

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


Jestes w bledzie to jes wlasnie technika pozbycia sie brzydkich czcionek. Poczytaj tu:

http://blog.bmn.name/2008/03/jquery-fadein...eartype-glitch/

Moje pytanko jest tylko jak zrobic zeby ta linijka byla rozpoznawana tylko przez IE


--------------------
Portfolio

Windows Vista Business SP1
DELL VOSTRO 200, Intel Core2 DUO E4600 2.4GHz, 3 GB RAM, ATI Radeon HD 2400 Pro, Screen DELL 22"

Pomogłem ci -> Kliknij "Pomógł" -> Dzięki
Go to the top of the page
+Quote Post
erix
post
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Źródła jQ:
[JAVASCRIPT] pobierz, plaintext
  1. // IE uses filters for opacity
  2. if ( !jQuery.support.opacity && name == "opacity" ) {
  3. if ( set ) {
  4. // IE has trouble with opacity if it does not have layout
  5. // Force it by setting the zoom level
  6. elem.zoom = 1;
  7.  
  8. // Set the alpha filter to set the opacity
  9. elem.filter = (elem.filter || "").replace( /alpha\([^)]*\)/, "" ) +
  10. (parseInt( value ) + '' == "NaN" ? "" : "alpha(opacity=" + value * 100 + ")");
  11. }
  12.  
  13. return elem.filter && elem.filter.indexOf("opacity=") >= 0 ?
  14. (parseFloat( elem.filter.match(/opacity=([^)]*)/)[1] ) / 100) + '':
  15. "";
  16. }
[JAVASCRIPT] pobierz, plaintext

Trochę mi się to w głowie nie mieści, ale cóż...

Zresztą, w komentarzach parę osób zgłaszało problemy... A jeśli chodzi o problem z działaniem - masz komentarz warunkowy, a gdzie zdarzenie?


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

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
Spyder
post
Post #5





Grupa: Zarejestrowani
Postów: 269
Pomógł: 7
Dołączył: 12.10.2006
Skąd: Newcastle Upon Tyne

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


Niestety to nie dziala...


--------------------
Portfolio

Windows Vista Business SP1
DELL VOSTRO 200, Intel Core2 DUO E4600 2.4GHz, 3 GB RAM, ATI Radeon HD 2400 Pro, Screen DELL 22"

Pomogłem ci -> Kliknij "Pomógł" -> Dzięki
Go to the top of the page
+Quote Post
erix
post
Post #6





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Pokaż, co zrobiłeś.


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

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
baa
post
Post #7





Grupa: Zarejestrowani
Postów: 18
Pomógł: 4
Dołączył: 14.08.2009

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


Komentarze warunkowe nie będą działać, bo to komentarze HTMLa, nie JS.

Ja zawsze robię tak:

Dodaję swoją metodę, usuwającą problem z ClearType:
[JAVASCRIPT] pobierz, plaintext
  1. jQuery.fn.extend({
  2. // fix msie7 ClearType
  3. ieFilter: function() {
  4. return this.each(function(){
  5. if(this.style.filter && this.style.removeAttribute){
  6. this.style.removeAttribute('filter');
  7. }
  8. });
  9. }
  10. })
[JAVASCRIPT] pobierz, plaintext


I tej metody używa się dopiero PO animacji przezroczystości, czyli w tzw. callback function, dodawanej jako trzeci argument:

[JAVASCRIPT] pobierz, plaintext
  1. $(this).fadeTo('slow', 1, function() {
  2. if($.browser.msie && $.browser.version == '7.0') {
  3. $(this).ieFilter()
  4. }
  5. })
[JAVASCRIPT] pobierz, plaintext


W zasadzie to sprawdzanie przeglądarki możesz przenieść do definicji metody. Powinno pomóc.
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 Aktualny czas: 21.08.2025 - 19:03