Thread View: pl.comp.lang.javascript
4 messages
4 total messages
Started by Michal M. Lechanski
Thu, 01 Aug 2019 20:22
Co tu jest źle?
Author: Michal M. Lechanski
Date: Thu, 01 Aug 2019 20:22
Date: Thu, 01 Aug 2019 20:22
62 lines
3082 bytes
3082 bytes
Mam taki script w <body> (do head nie mam dostępu), który wyświetlał
losowo jeden z obrazków. Ostatnio dodawałem kolejny obrazek i coś
zepsułem - obrazki się nie wyświetlają. Poza tym wszystko inne działa.
Console z Developer Tools w Firefoksie pokazuje:
TypeError: document.getElementById(...) is null
loadHomeImage http://lechanski.net/:155
<anonymous> http://lechanski.net/:158
Podpowiedzcie proszę co zrobiłem źle i jak to naprawić.
Z góry bardzo dziękuję.
Kod:
<script type="text/javascript">
function loadHomeImage(){
console.log('loadHomeImage();');
var imagenumber = 11 ;
var randomnumber = Math.random() ;
var rand1 = Math.round( (imagenumber-1) * randomnumber) + 1 ;
images = new Array;
// LIST OF IMAGES
images[0] ='<img src="http://images.fluidfolio.com/x/y/zzz1.jpg">';
images[1] ='<img src="http://images.fluidfolio.com/x/y/zzz2.jpg">'
images[2] ='<img src="http://images.fluidfolio.com/x/y/zzz3.jpg">';
images[3] ='<img src="http://images.fluidfolio.com/x/y/zzz4.jpg">';
images[4] ='<img src="http://images.fluidfolio.com/x/y/zzz5.jpg">';
images[5] ='<img src="http://images.fluidfolio.com/x/y/zzz6.jpg">';
images[6] ='<img src="http://images.fluidfolio.com/x/y/zzz7.jpg">';
images[7] ='<img src="http://images.fluidfolio.com/x/y/zzz8.jpg">';
images[8] ='<img src="http://images.fluidfolio.com/x/y/zzz9.jpg">';
images[9] ='<img src="http://images.fluidfolio.com/x/y/zzz10.jpg">';
images[10] ='<img src="https://images.fluidfolio.com/x/y/zzz11.jpg">';
var image = images[rand1];
captions = new Array;
// LIST OF CAPTİONS
captions[0] = "Pictures: 01";
captions[1] = "Pictures: 02";
captions[2] = "Pictures: 03";
captions[3] = "Pictures: 04";
captions[4] = "Pictures: 05";
captions[5] = "Pictures: 06";
captions[6] = "Pictures: 07";
captions[7] = "Pictures: 08";
captions[8] = "Pictures: 09";
captions[9] = "Pictures: 10";
captions[10] = "Pictures: 11";
var caption = captions[rand1];
document.getElementById('homepage-image').innerHTML = '<img src="' +
image + '" width="auto" height="400px">' + caption; //linia 155
};
loadHomeImage(); //linia 158
</script>
--
Michał
Re: Co tu jest źle?
Author: Tomek
Date: Fri, 02 Aug 2019 07:25
Date: Fri, 02 Aug 2019 07:25
37 lines
2001 bytes
2001 bytes
W dniu 01.08.2019 o 22:22, Michal M. Lechanski pisze:
> Mam taki script w <body> (do head nie mam dostępu), który wyświetlał
> losowo jeden z obrazków. Ostatnio dodawałem kolejny obrazek i coś
> zepsułem - obrazki się nie wyświetlają. Poza tym wszystko inne działa.
>
> Console z Developer Tools w Firefoksie pokazuje:
>
> TypeError: document.getElementById(...) is null
> loadHomeImage http://lechanski.net/:155
> <anonymous> http://lechanski.net/:158
>
> Podpowiedzcie proszę co zrobiłem źle i jak to naprawić.
> Z góry bardzo dziękuję.
>
>
> Kod:
>
> <script type="text/javascript">
> function loadHomeImage(){
> document.getElementById('homepage-image').innerHTML = 'xxx';
> };
>
> loadHomeImage();
> </script>
>
>
Wywołujesz funkcję kiedy jeszcze nie istnieje (a raczej nie masz
gwarancji, że istniej) "homepage-image".
W jQuery stosuje się formułkę, która rozwiązuje ten problem:
jQuery(document).ready(function() {
});
W internecie znajdziesz zamiennik tego w czystym JS.
Re: Co tu jest źle?
Author: zpksoft
Date: Fri, 02 Aug 2019 12:48
Date: Fri, 02 Aug 2019 12:48
65 lines
3703 bytes
3703 bytes
W dniu czwartek, 1 sierpnia 2019 22:22:09 UTC+2 użytkownik Michal M. Lechanski napisał:
> Mam taki script w <body> (do head nie mam dostępu), który wyświetlał
> losowo jeden z obrazków. Ostatnio dodawałem kolejny obrazek i coś
> zepsułem - obrazki się nie wyświetlają. Poza tym wszystko inne działa.
>
> Console z Developer Tools w Firefoksie pokazuje:
>
> TypeError: document.getElementById(...) is null
> loadHomeImage http://lechanski.net/:155
> <anonymous> http://lechanski.net/:158
>
> Podpowiedzcie proszę co zrobiłem źle i jak to naprawić.
> Z góry bardzo dziękuję.
>
>
> Kod:
>
> <script type="text/javascript">
> function loadHomeImage(){
> console.log('loadHomeImage();');
> var imagenumber = 11 ;
> var randomnumber = Math.random() ;
> var rand1 = Math.round( (imagenumber-1) * randomnumber) + 1 ;
> images = new Array;
>
> // LIST OF IMAGES
> images[0] ='<img src="http://images.fluidfolio.com/x/y/zzz1.jpg">';
> images[1] ='<img src="http://images.fluidfolio.com/x/y/zzz2.jpg">'
> images[2] ='<img src="http://images.fluidfolio.com/x/y/zzz3.jpg">';
> images[3] ='<img src="http://images.fluidfolio.com/x/y/zzz4.jpg">';
> images[4] ='<img src="http://images.fluidfolio.com/x/y/zzz5.jpg">';
> images[5] ='<img src="http://images.fluidfolio.com/x/y/zzz6.jpg">';
> images[6] ='<img src="http://images.fluidfolio.com/x/y/zzz7.jpg">';
> images[7] ='<img src="http://images.fluidfolio.com/x/y/zzz8.jpg">';
> images[8] ='<img src="http://images.fluidfolio.com/x/y/zzz9.jpg">';
> images[9] ='<img src="http://images.fluidfolio.com/x/y/zzz10.jpg">';
> images[10] ='<img src="https://images.fluidfolio.com/x/y/zzz11.jpg">';
> var image = images[rand1];
> captions = new Array;
>
> // LIST OF CAPTİONS
> captions[0] = "Pictures: 01";
> captions[1] = "Pictures: 02";
> captions[2] = "Pictures: 03";
> captions[3] = "Pictures: 04";
> captions[4] = "Pictures: 05";
> captions[5] = "Pictures: 06";
> captions[6] = "Pictures: 07";
> captions[7] = "Pictures: 08";
> captions[8] = "Pictures: 09";
> captions[9] = "Pictures: 10";
> captions[10] = "Pictures: 11";
> var caption = captions[rand1];
> document.getElementById('homepage-image').innerHTML = '<img src="' +
> image + '" width="auto" height="400px">' + caption; //linia 155
> };
>
> loadHomeImage(); //linia 158
> </script>
>
>
> --
> Michał
onload()
Re: Co tu jest źle?
Author: Michal M. Lechanski
Date: Sat, 03 Aug 2019 08:46
Date: Sat, 03 Aug 2019 08:46
8 lines
1058 bytes
1058 bytes
W dniu 01.08.2019 o 21:22, Michal M. Lechanski pisze: > [...] Dziękuję bardzo za obie odpowiedzi. -- Michał
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