![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 172 Pomógł: 0 Dołączył: 11.06.2014 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Mam pewien problem. Importuje dokument z pliku do iframe. Wyświetla mi tam rozkład w elementach table Wszystkie godziny odjazdu sa w komorkach, w jednym <tr> Lecz na TD dane jest display:inline-block co powoduje ze ladnie przerzucane są elementy do nowej lini. Obszar roboczy tabeli to 600px. Więc reszta jak wykracza poza tabele jest od nowej lini. Wszystko dobrze działa, lecz niestety nie na oprogramowaniu Mac (Safari czy przehladarki na iphonie). Jest jakis knif jak to zrobić aby poprawnie działało również na Apple.... |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 374 Pomógł: 79 Dołączył: 6.04.2010 Skąd: Ostrów Wielkopolski Ostrzeżenie: (0%) ![]() ![]() |
A wrzuć przykładowy fragment tabeli, tak żeby było widać cały styl na table, tr i td.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 172 Pomógł: 0 Dołączył: 11.06.2014 Ostrzeżenie: (0%) ![]() ![]() |
http://imgur.com/a/lF61O Wszystkie przegladarki i na androidzie: ![]() IOS: ![]() Czy takie coś wystarczy? Ten post edytował atom90 31.05.2017, 11:29:55 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 374 Pomógł: 79 Dołączył: 6.04.2010 Skąd: Ostrów Wielkopolski Ostrzeżenie: (0%) ![]() ![]() |
Nie. Sorki, miałem na myśli żebyś wrzucił fragment KODU tabeli, razem z klasami css. Albo spreparuj na https://jsfiddle.net/.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 172 Pomógł: 0 Dołączył: 11.06.2014 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 374 Pomógł: 79 Dołączył: 6.04.2010 Skąd: Ostrów Wielkopolski Ostrzeżenie: (0%) ![]() ![]() |
U mnie też działa, ale ja Safari na Windowsie testuję.
Udało mi się to popsuć, jak usunąłem "<!DOCTYPE html>" - w Chromie było nadal OK, ale w Safari i IE się posypało. Może ktoś kto ma możliwość potestowania na Macu Ci pomoże... |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
Na Safari 9.1, 10.1 oraz iPhone 5 i 6, jest ok.
-------------------- |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 172 Pomógł: 0 Dołączył: 11.06.2014 Ostrzeżenie: (0%) ![]() ![]() |
Tutaj Nie bedziecie mieli ok:
http://www.mzk.pl/rozklady_new/0001/ ... Kliknijcie obojetnie jaki przystanek. np szpital wojewodzki. Zobaczycie ze w safari bedzie w jednej lini. |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 374 Pomógł: 79 Dołączył: 6.04.2010 Skąd: Ostrów Wielkopolski Ostrzeżenie: (0%) ![]() ![]() |
Tak na pierwszy rzut oka to właśnie brakuje deklaracji doctype w tym co jest ładowane do iframe'a - we w.htm i wszystkich rozkładach 0001t0??.htm
Spróbuj tam dodać <!DOCTYPE html>, zobaczymy czy pomaga. |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 172 Pomógł: 0 Dołączył: 11.06.2014 Ostrzeżenie: (0%) ![]() ![]() |
Hmm. Zastanawiam się jak tam dodac. Fizycznie dodałem sprawdziłem faktycznie
![]() Tylko niestety dodawanie reczne nie jest mozliwe. Bo za duzo tych plików. Zreszta jakoś dziwnie gdy otwieram to zamienia polskie znaki. na (?) Jedyna opcja to dodanie !doctype za pomoca jquery do iframe. tylko jak ... w taki sposob dodaje style do iframe: Kod $(".rozklad iframe").on('load',function(){ $(".rozklad iframe").contents().find("head").append('<link href="http://www.mzk.pl/wp-content/themes/mzk-blue/inc/rozklad.css" id="rozklad" rel="stylesheet" type="text/css">'); }); ale nie wiem jak doctype dodac w podobny sposob |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 374 Pomógł: 79 Dołączył: 6.04.2010 Skąd: Ostrów Wielkopolski Ostrzeżenie: (0%) ![]() ![]() |
Nie sprawdzałem, ale spróbuj z prepend().
Może coś w rodzaju Kod $(".rozklad iframe").contents().find("html").prepend("<!DOCTYPE html>");
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 172 Pomógł: 0 Dołączył: 11.06.2014 Ostrzeżenie: (0%) ![]() ![]() |
Właśnie nie działa :/
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
W jaki sposób importujesz plik do iframe?
-------------------- |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 172 Pomógł: 0 Dołączył: 11.06.2014 Ostrzeżenie: (0%) ![]() ![]() |
W wordpresie mam stworzony custom post i wklejam iframe z odpowiednia linia
np: Kod <div style="overflow:auto;-webkit-overflow-scrolling:touch"><iframe src="http://www.mzk.pl/rozklady_n/0029/w.htm" width="100%"
onload="this.style.height=this.contentDocument.body.scrollHeight +'px'; window.parent.parent.scrollTo(0,0);" ></iframe></div> Ten post edytował atom90 6.06.2017, 06:58:44 |
|
|
![]()
Post
#15
|
|
![]() Grupa: Zarejestrowani Postów: 374 Pomógł: 79 Dołączył: 6.04.2010 Skąd: Ostrów Wielkopolski Ostrzeżenie: (0%) ![]() ![]() |
Ja tak czy inaczej optowałbym za dodaniem tej deklaracji w każdym pliku. Jak się użyje odpowiedniego narzędzia (np. sed) to ilość przestaje mieć znaczenie. Jeśli nie śmigasz w Linuxie to możesz zainstalować podstawową wersję Cygwina i bez problemu wygooglujesz jak dopisać jeden wiersz w wielu plikach. A jak nie wygooglujesz to na tym forum ktoś Ci podpowie.
Ale jeśli chodzi o dodanie deklaracji dynamicznie, a prependowanie nie działa, to może tak: 1. Po załadowaniu iframe'a pobrać jego zawartość do zmiennej, 2. Wpisać do iframe'a doctype, 3. Dopisać do iframe'a wcześniej pobraną zawartość. No i nadal masz trzecią opcję: wymyślić css, który Safari zinterpretuje pomimo braku deklaracji typu dokumentu. Wcześniej nie mogłeś tego rozgryźć, bo nie wiedziałeś gdzie jest problem. Ale teraz skoro już wiesz... |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 172 Pomógł: 0 Dołączył: 11.06.2014 Ostrzeżenie: (0%) ![]() ![]() |
Kod $(".rozklad iframe").on('load',function(){ var iframe= $(".rozklad iframe"); }); O to chodzi? w zmiennej mam teraz obiekt: Object { 0: HTMLDocument → 0014t001.htm, selector: "", length: 1, prevObject: Object, context: HTMLDocument → 0014 } I nie mam bladego pojecia co dalej .... jak dopisac do tego |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 57 Pomógł: 1 Dołączył: 12.02.2016 Ostrzeżenie: (0%) ![]() ![]() |
Jeśli problem z safari można spróbować w css: -webkit-appearance: none;
|
|
|
![]()
Post
#18
|
|
![]() Grupa: Zarejestrowani Postów: 374 Pomógł: 79 Dołączył: 6.04.2010 Skąd: Ostrów Wielkopolski Ostrzeżenie: (0%) ![]() ![]() |
Kod $(".rozklad iframe").on('load',function(){ var iframe= $(".rozklad iframe"); }); O to chodzi? w zmiennej mam teraz obiekt: Object { 0: HTMLDocument → 0014t001.htm, selector: "", length: 1, prevObject: Object, context: HTMLDocument → 0014 } I nie mam bladego pojecia co dalej .... jak dopisac do tego Chodzi o to, żeby wyciągnąć tylko html.
To będzie zawierało czysty tekst. Teraz do tego, na początku trzeba dopisać doctype:
I wrzucić do do iframe'a. Ja nie znalazłem sposobu na nadpisanie całej zawartości iframe'a za pomocą jQuery, ale szybko znalazłem jak zrobić to czystym javascriptem. Poszukaj - nie powinieneś mieć problemu. PS. Powtarzam, że mi się taki sposób zupełnie nie podoba. Dużo więcej się nauczysz jak spróbujesz jakimś automatem dopisać tą linię tekstu we wszystkich plikach. |
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 172 Pomógł: 0 Dołączył: 11.06.2014 Ostrzeżenie: (0%) ![]() ![]() |
bostaf jest postęp!
Kod function explode2(){ $(".rozklad iframe").on('load',function(){ $(".rozklad iframe").contents().find("head").append('<link href="http://www.mzk.pl/wp-content/themes/mzk-blue/inc/rozklad.css" id="rozklad" rel="stylesheet" type="text/css">'); var importIframe= $(".rozklad iframe").contents().find("html").html(); importIframe="<!DOCTYPE html>"+importIframe; // console.log(importIframe); var iframe = document.getElementById('iframeID'); iframe = iframe.contentWindow || ( iframe.contentDocument.document || iframe.contentDocument); iframe.document.open(); iframe.document.write(importIframe); iframe.document.close(); console.log(importIframe); }); } Tak aktualnie wyglada funkcja. Wszystko prawie ok, ale jest pewien problem bo sciezki do laczy sa niepoprawne Powinny byc takie jak do adresu głównego: rozklady_n/0014/w.htm a prowadzą do: rozklady_new/0014/w.htm Czyli pobiera sciezke z miejsca, w którym jestesmy, a nie z wewnecznego dokumentu iframe. skąd taka zmiana ? Ten post edytował atom90 8.06.2017, 12:44:36 |
|
|
![]()
Post
#20
|
|
![]() Grupa: Zarejestrowani Postów: 374 Pomógł: 79 Dołączył: 6.04.2010 Skąd: Ostrów Wielkopolski Ostrzeżenie: (0%) ![]() ![]() |
Wszystko prawie ok, ale jest pewien problem bo sciezki do laczy sa niepoprawne Powinny byc takie jak do adresu głównego: rozklady_n/0014/w.htm a prowadzą do: rozklady_new/0014/w.htm Czyli pobiera sciezke z miejsca, w którym jestesmy, a nie z wewnecznego dokumentu iframe. skąd taka zmiana ? Nie wydaje mi się, że to ma związek z tym przekształcaniem. Może testujesz nie tam gdzie Ci się wydaje? ![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 07:39 |