🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.javascript
11 messages
11 total messages Started by smerf Wed, 21 Oct 2009 20:28
podmiana img i wczytanie jego rozmiaru
#49462
Author: smerf
Date: Wed, 21 Oct 2009 20:28
17 lines
1233 bytes
Probuje podmienic src w img i zczytac jego rozmiar.
Nie zawsze mi to dziala tzn czasem rozmiar jest nieprawidlowy.
Podejrzewam ze obrazek sie nie zdazy wczytac a skrypt js dalej sie wykonuje, mam racje ?

W  HTML mam :

<div id="test" style="display: block; background-color: gray; padding: 5px; border: 1px solid green">
<img src="" id="slajd">
</div>

A w JS mam :

document.getElementById(slajd).setAttribute("src", path);
document.getElementById('test').style.width = document.getElementById(slajd).clientWidth + 'px';


Da sie cos z tym zrobic ??
Re: podmiana img i wczytanie jego rozmiaru
#49463
Author: ethanak
Date: Thu, 22 Oct 2009 07:25
19 lines
1212 bytes
Dnia Wed, 21 Oct 2009 22:28:35 +0200, smerf napisał(a):

> Probuje podmienic src w img i zczytac jego rozmiar. Nie zawsze mi to
> dziala tzn czasem rozmiar jest nieprawidlowy. Podejrzewam ze obrazek sie
> nie zdazy wczytac a skrypt js dalej sie wykonuje, mam racje ?

masz.

> Da sie cos z tym zrobic ??

obrazek.onload=function()
{
// tu kod
}

ethanak
-- 
mailto=window.atob('ZXRoYW5ha0Bwb2xpcC5jb20=');
http://milena.polip.com/ - nie czekam na Ivo!
Re: podmiana img i wczytanie jego rozmiaru
#49464
Author: Peter May
Date: Thu, 22 Oct 2009 08:29
21 lines
1501 bytes
ethanak pisze:
> Dnia Wed, 21 Oct 2009 22:28:35 +0200, smerf napisał(a):
> 
>> Probuje podmienic src w img i zczytac jego rozmiar. Nie zawsze mi to
>> dziala tzn czasem rozmiar jest nieprawidlowy. Podejrzewam ze obrazek sie
>> nie zdazy wczytac a skrypt js dalej sie wykonuje, mam racje ?
> 
> masz.
> 
>> Da sie cos z tym zrobic ??
> 
> obrazek.onload=function()
> {
> // tu kod
> }

Obawiam się, że co najmniej pod Operą i IE7 będą z tym problemy. 
Testowałem :/

-- 
Peter
Re: podmiana img i wczytanie jego rozmiaru
#49465
Author: keemor
Date: Thu, 22 Oct 2009 10:47
40 lines
2249 bytes
On 22 Paź, 10:29, Peter May <peter....@poczta.fm> wrote:
> ethanak pisze:
>
> > Dnia Wed, 21 Oct 2009 22:28:35 +0200, smerf napisał(a):
>
> >> Probuje podmienic src w img i zczytac jego rozmiar. Nie zawsze mi to
> >> dziala tzn czasem rozmiar jest nieprawidlowy. Podejrzewam ze obrazek sie
> >> nie zdazy wczytac a skrypt js dalej sie wykonuje, mam racje ?
>
> > masz.
>
> >> Da sie cos z tym zrobic ??
>
> > obrazek.onload=function()
> > {
> > // tu kod
> > }
>
> Obawiam się, że co najmniej pod Operą i IE7 będą z tym problemy.
> Testowałem :/
>
> --
> Peter

1.
Onload dziala w IE7 i pod Opera
http://stackoverflow.com/questions/198892/img-onload-doesnt-work-well-in-ie7

Poprawne uzycie to:
document.getElementById(slajd).onload = function() { }
document.getElementById(slajd).src = '/path/to/img'

Najpierw rejestracja onload, pozniej zaladunek obrazka

2. Obrazek ma atrybuty DOM - width i height
document.getElementById(slajd).width
document.getElementById(slajd).height

pozdrawiam
keemor.com
Re: podmiana img i wczytanie jego rozmiaru
#49466
Author: Peter May
Date: Thu, 22 Oct 2009 11:16
38 lines
2242 bytes
keemor pisze:
> On 22 Paź, 10:29, Peter May <peter....@poczta.fm> wrote:
>> ethanak pisze:
>>
>>> Dnia Wed, 21 Oct 2009 22:28:35 +0200, smerf napisał(a):
>>>> Probuje podmienic src w img i zczytac jego rozmiar. Nie zawsze mi to
>>>> dziala tzn czasem rozmiar jest nieprawidlowy. Podejrzewam ze obrazek sie
>>>> nie zdazy wczytac a skrypt js dalej sie wykonuje, mam racje ?
>>> masz.
>>>> Da sie cos z tym zrobic ??
>>> obrazek.onload=function()
>>> {
>>> // tu kod
>>> }
>> Obawiam się, że co najmniej pod Operą i IE7 będą z tym problemy.
>> Testowałem :/
>>
>> --
>> Peter
> 
> 1.
> Onload dziala w IE7 i pod Opera
> http://stackoverflow.com/questions/198892/img-onload-doesnt-work-well-in-ie7
> 
> Poprawne uzycie to:
> document.getElementById(slajd).onload = function() { }
> document.getElementById(slajd).src = '/path/to/img'
> 
> Najpierw rejestracja onload, pozniej zaladunek obrazka

Chodziło o img.onload = function(){}; A to w Operze nie działało mi. W 
IE7 może zagalopowałem się nieco, ale kto jego tam wie ;-)

Ponadto inna ciekawostka:
http://snippets.dzone.com/posts/show/89

-- 
Peter
Re: podmiana img i wczytanie jego rozmiaru
#49467
Author: keemor
Date: Thu, 22 Oct 2009 11:53
49 lines
2688 bytes
On 22 Paź, 13:16, Peter May <peter....@poczta.fm> wrote:
> keemor pisze:
>
>
>
> > On 22 Paź, 10:29, Peter May <peter....@poczta.fm> wrote:
> >> ethanak pisze:
>
> >>> Dnia Wed, 21 Oct 2009 22:28:35 +0200, smerf napisał(a):
> >>>> Probuje podmienic src w img i zczytac jego rozmiar. Nie zawsze mi to
> >>>> dziala tzn czasem rozmiar jest nieprawidlowy. Podejrzewam ze obrazek sie
> >>>> nie zdazy wczytac a skrypt js dalej sie wykonuje, mam racje ?
> >>> masz.
> >>>> Da sie cos z tym zrobic ??
> >>> obrazek.onload=function()
> >>> {
> >>> // tu kod
> >>> }
> >> Obawiam się, że co najmniej pod Operą i IE7 będą z tym problemy.
> >> Testowałem :/
>
> >> --
> >> Peter
>
> > 1.
> > Onload dziala w IE7 i pod Opera
> >http://stackoverflow.com/questions/198892/img-onload-doesnt-work-well...
>
> > Poprawne uzycie to:
> > document.getElementById(slajd).onload = function() { }
> > document.getElementById(slajd).src = '/path/to/img'
>
> > Najpierw rejestracja onload, pozniej zaladunek obrazka
>
> Chodziło o img.onload = function(){}; A to w Operze nie działało mi. W
> IE7 może zagalopowałem się nieco, ale kto jego tam wie ;-)
>
> Ponadto inna ciekawostka:http://snippets.dzone.com/posts/show/89
>
> --
> Peter

Na Opera 10.0 / Ubuntu działa

Kod
http://jsbin.com/iviha
http://jsbin.com/iviha/edit
--
keemor.com
Re: podmiana img i wczytanie jego rozmiaru
#49468
Author: Peter May
Date: Thu, 22 Oct 2009 12:20
59 lines
2997 bytes
keemor pisze:
> On 22 Paź, 13:16, Peter May <peter....@poczta.fm> wrote:
>> keemor pisze:
>>
>>
>>
>>> On 22 Paź, 10:29, Peter May <peter....@poczta.fm> wrote:
>>>> ethanak pisze:
>>>>> Dnia Wed, 21 Oct 2009 22:28:35 +0200, smerf napisał(a):
>>>>>> Probuje podmienic src w img i zczytac jego rozmiar. Nie zawsze mi to
>>>>>> dziala tzn czasem rozmiar jest nieprawidlowy. Podejrzewam ze obrazek sie
>>>>>> nie zdazy wczytac a skrypt js dalej sie wykonuje, mam racje ?
>>>>> masz.
>>>>>> Da sie cos z tym zrobic ??
>>>>> obrazek.onload=function()
>>>>> {
>>>>> // tu kod
>>>>> }
>>>> Obawiam się, że co najmniej pod Operą i IE7 będą z tym problemy.
>>>> Testowałem :/
>>>> --
>>>> Peter
>>> 1.
>>> Onload dziala w IE7 i pod Opera
>>> http://stackoverflow.com/questions/198892/img-onload-doesnt-work-well...
>>> Poprawne uzycie to:
>>> document.getElementById(slajd).onload = function() { }
>>> document.getElementById(slajd).src = '/path/to/img'
>>> Najpierw rejestracja onload, pozniej zaladunek obrazka
>> Chodziło o img.onload = function(){}; A to w Operze nie działało mi. W
>> IE7 może zagalopowałem się nieco, ale kto jego tam wie ;-)
>>
>> Ponadto inna ciekawostka:http://snippets.dzone.com/posts/show/89
>>
>> --
>> Peter
> 
> Na Opera 10.0 / Ubuntu działa
> 
> Kod
> http://jsbin.com/iviha
> http://jsbin.com/iviha/edit

W porządku. Działa. Mi jednak takie coś nie działało w Operze:

1. Ściągam zawartość z serwera XHR-em (lista <ul id="test"><li><img.. 
/></li></ul>)
2. Wstawiam zawartość.
3. I uruchamiam:

document.getElementById("test").getElementsByTagName("img")[0].onload = 
function(){
  // cos tam uruchmiam
}

I to właśnie nie działało mi w Operze.

-- 
Peter
Re: podmiana img i wczytanie jego rozmiaru
#49472
Author: Peter May
Date: Thu, 22 Oct 2009 12:23
12 lines
1415 bytes
keemor pisze:
> Na Opera 10.0 / Ubuntu działa
> 
> Kod
> http://jsbin.com/iviha
> http://jsbin.com/iviha/edit

Konkretnie chodzi o mój wątek:
http://skroc.pl/e836

-- 
Peter
Re: podmiana img i wczytanie jego rozmiaru
#49469
Author: keemor
Date: Thu, 22 Oct 2009 12:55
79 lines
3809 bytes
On 22 Paź, 14:20, Peter May <peter....@poczta.fm> wrote:
> keemor pisze:
>
>
>
> > On 22 Paź, 13:16, Peter May <peter....@poczta.fm> wrote:
> >> keemor pisze:
>
> >>> On 22 Paź, 10:29, Peter May <peter....@poczta.fm> wrote:
> >>>> ethanak pisze:
> >>>>> Dnia Wed, 21 Oct 2009 22:28:35 +0200, smerf napisał(a):
> >>>>>> Probuje podmienic src w img i zczytac jego rozmiar. Nie zawsze mi to
> >>>>>> dziala tzn czasem rozmiar jest nieprawidlowy. Podejrzewam ze obrazek sie
> >>>>>> nie zdazy wczytac a skrypt js dalej sie wykonuje, mam racje ?
> >>>>> masz.
> >>>>>> Da sie cos z tym zrobic ??
> >>>>> obrazek.onload=function()
> >>>>> {
> >>>>> // tu kod
> >>>>> }
> >>>> Obawiam się, że co najmniej pod Operą i IE7 będą z tym problemy.
> >>>> Testowałem :/
> >>>> --
> >>>> Peter
> >>> 1.
> >>> Onload dziala w IE7 i pod Opera
> >>>http://stackoverflow.com/questions/198892/img-onload-doesnt-work-well...
> >>> Poprawne uzycie to:
> >>> document.getElementById(slajd).onload = function() { }
> >>> document.getElementById(slajd).src = '/path/to/img'
> >>> Najpierw rejestracja onload, pozniej zaladunek obrazka
> >> Chodziło o img.onload = function(){}; A to w Operze nie działało mi. W
> >> IE7 może zagalopowałem się nieco, ale kto jego tam wie ;-)
>
> >> Ponadto inna ciekawostka:http://snippets.dzone.com/posts/show/89
>
> >> --
> >> Peter
>
> > Na Opera 10.0 / Ubuntu działa
>
> > Kod
> >http://jsbin.com/iviha
> >http://jsbin.com/iviha/edit
>
> W porządku. Działa. Mi jednak takie coś nie działało w Operze:
>
> 1. Ściągam zawartość z serwera XHR-em (lista <ul id="test"><li><img..
> /></li></ul>)
> 2. Wstawiam zawartość.
> 3. I uruchamiam:
>
> document.getElementById("test").getElementsByTagName("img")[0].onload =
> function(){
>   // cos tam uruchmiam
>
> }
>
> I to właśnie nie działało mi w Operze.
>
> --
> Peter

No tak w Operze nie dziala:
http://jsbin.com/oline

Pisalem wyzej, ze liczy sie kolejnosc:

Poprawne uzycie to:
document.getElementById(slajd).onload = function() { }
document.getElementById(slajd).src = '/path/to/img'
Najpierw rejestracja onload, pozniej zaladunek obrazka

Wniosek jest prosty, jesli chcesz kontrolowac zaladowanie obrazka
musisz to robic nadajac wartosc atrybutowi src obrazka, a nie wstawiac
caly tag <img> w DOM.

--
keemor.com
Re: podmiana img i wczytanie jego rozmiaru
#49470
Author: Peter May
Date: Thu, 22 Oct 2009 13:13
21 lines
2012 bytes
keemor pisze:
> No tak w Operze nie dziala:
> http://jsbin.com/oline
> 
> Pisalem wyzej, ze liczy sie kolejnosc:
> 
> Poprawne uzycie to:
> document.getElementById(slajd).onload = function() { }
> document.getElementById(slajd).src = '/path/to/img'
> Najpierw rejestracja onload, pozniej zaladunek obrazka
> 
> Wniosek jest prosty, jesli chcesz kontrolowac zaladowanie obrazka
> musisz to robic nadajac wartosc atrybutowi src obrazka, a nie wstawiac
> caly tag <img> w DOM.

To raczej dotyczy wątkotwórcy. Niemniej jednak w opisanym przez mnie 
wątku problem nie jest rozwiązany tak jednoznacznie. No, ale jak się 
człowiek nagimnastykuje to coś z tego wyjdzie ;-)

-- 
Peter
Re: podmiana img i wczytanie jego rozmiaru
#49471
Author: Paweł Piskorz
Date: Thu, 22 Oct 2009 14:40
13 lines
1797 bytes
keemor wrote:
> Pisalem wyzej, ze liczy sie kolejnosc:
> 
> Poprawne uzycie to:
> document.getElementById(slajd).onload = function() { }
> document.getElementById(slajd).src = '/path/to/img'
> Najpierw rejestracja onload, pozniej zaladunek obrazka
> 
> Wniosek jest prosty, jesli chcesz kontrolowac zaladowanie obrazka
> musisz to robic nadajac wartosc atrybutowi src obrazka, a nie wstawiac
> caly tag <img> w DOM.

A próbowaliście jQuerowego live?
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads