Jump to content
PirateClub.hu

JavaScript


enisz
 Share

Recommended Posts

üdv!

 

most próbálok képgalériát készíteni egy weblaphoz, amit egy táblázatban szeretnék elhelyezni a design miatt. a javascript feladata az lenne, hogy az oldal betöltődésekor lekérdezi a felhasználó által használt képernyő felbontást, és az alapján állítaná a táblázatnak a szélességét.

 

a szépséghibája a gondolatmenetemnek az, hogy nem tudom úgy megírni a függvényt, hogy annak a visszatérési értéke legyen a táblázat szélessége. vagy legalábbis az egyik cella szélessége.

 

maga a táblázat 3 sorból és 3 oszlopból áll

help1.jpg

azt szeretném megoldani javascripttel, hogy a középső oszlopoknak a méretét állítsa felbontás szerint. a HTML kódban a body onload eseményéhez próbáltam rendelni, hogy lefusson.

 

<html>
<head>
<script src="script.js"></script>
</head>

<body onload="meret(cella1,cella2,cella3)">
<table border="0" cellspacing="0" cellpadding="0">
 <tr>
   <td width="20" height="20" background="sarok_bf.jpg"> </td>
   <td id="cella1" height="20" background="vizszint.jpg"> </td>
   <td width="20" height="20" background="sarok_jf.jpg"> </td>
 </tr>
 <tr>
   <td width="20" height="20" background="fuggoleges.jpg"> </td>
   <td id="cella2" height="20"> </td>
   <td width="20" height="20" background="fuggoleges.jpg"> </td>
 </tr>
 <tr>
   <td width="20" height="20" background="sarok_ba.jpg"> </td>
   <td id="cella3" height="20" background="vizszint.jpg"> </td>
   <td width="20" height="20" background="sarok_ja.jpg"> </td>
 </tr>
</table>
</body>

</html>

 

ez pedig a javascript amit írtam hozzá:

 var resx = screen.width;

function meret(cella1,cella2,cella3) {
     
     if (resx <= 1100) {
         document.getElementById(cella1).width = 1000;
         document.getElementById(cella2).width = 1000;
         document.getElementById(cella3).width = 1000;
     }//if
     
     else if (resx > 1100 && resx <= 1300) {
         document.getElementById(cella1).width = 1150;
         document.getElementById(cella2).width = 1150;
         document.getElementById(cella3).width = 1150;
     }//else if
     
     else if (resx > 1300 && resx <= 1650) {
         document.getElementById(cella1).width = 1550;
         document.getElementById(cella2).width = 1550;
         document.getElementById(cella3).width = 1550;
     }//else if
     
}//meret

 

a lényeg az lenne, hogy mikor a body letöltődik, akkor a javascripten belül a resx változóba beleteszi a felhasználó felbontásának szélességét pixelben (pl 1280). mikor ez megvan, az if-eknél elágazik, és a megadott értékek szerint lefut az egyik ág. a szépséghibája a dolognak, hogy a width paraméterrel nem változtatja meg a táblázat szélességét.

 

aki tud legyen szíves segítsen! előre is köszönöm!

Link to comment
Share on other sites

ez legyen a script: ;)

 

function meret() {
    var resx = screen.width;
    
    if (resx <= 1100) document.getElementById("cella1").style.width = "1000px";
    else if (resx > 1100 && resx <= 1300) document.getElementById("cella1").style.width = "1150px";
    else if (resx > 1300 && resx <= 1650) document.getElementById("cella1").style.width = "1550px";
}

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Hozzászólás a témához...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Jelenleg olvassa   0 members

    • No registered users viewing this page.
×
×
  • Create New...