[ Daffa @ 04.04.2008. 22:53 ] @
Ovo je djelic jednog zadatka koji treba da odradim: "Koristeći DOM (tj. funkciju GetElementById i druge) napisati JavaScript funkcije koje izborom foreground ili background boje iz liste automatski mijenjaju to svojstvo u texta area. " Kako ovo realizovati?

Mislim da sam dobro poceo sa ovim:

<script language="JavaScript">
<!--
function changeColors()
{
var textarea = document.getElementById("txtArea");
alert(textarea.style.background);
textarea.style.background="background";
textarea.style.foreground="foreground";
}
-->
</script>

ali sam zakocio. Neka pomoc? Puno hvala, unaprijed.
[ Aleksandar Ružičić @ 05.04.2008. 16:59 ] @
Code:

<script language="JavaScript">
<!--
function changeColors(fore, back)
{
   var textarea = document.getElementById("txtArea");
   textarea.style.backgroundColor = back;
   textarea.style.color = fore;
}
-->
</script>
[ Daffa @ 05.04.2008. 20:58 ] @
A je li ovo mijenjanje boja kroz liste? Nesto mi ne lici na to... Izvinjavam se ako nisam u pravu, pocetnik sam. Puno hvla na pomoci.
[ Aleksandar Ružičić @ 06.04.2008. 03:38 ] @
to ti je fja koja menja boju pozadine i boju texta elementa sa id-om "txtArea", to pozoves tamo gde hoces da promenis boje.

a ako pod "liste" mislis na select boxove onda ovako nesto, prvo html:
Code:

<select id="backColors">
   <option value="#ff0000">Red</option>
   <option value="#00ff00">Green</option>
   <option value="#0000ff">Blue</option>
</select>

<select id="foreColors">
   <option value="#ff0000">Red</option>
   <option value="#00ff00">Green</option>
   <option value="#0000ff">Blue</option>
</select>


javascript:
Code:


var backColors, foreColors;

window.onload = function()
{
    backColors = document.getElementById("backColors");
    foreColors = document.getElementById("foreColors");  

    backColors.onchange = foreColors.onchange = function()
    {
        changeColors(backColor.options[backColor.selectedIndex].value, foreColor.options[foreColor.selectedIndex].value);
    };
};


poz
[ Daffa @ 06.04.2008. 21:17 ] @
To bi trebalo ovako d izgleda, jesam li u pravu? Molim te, izvini sto te davim. Ovo je kod za citavu formu. Puno hvala na pomoci, drugar.

Code:

<script language="JavaScript">
<!--

function changeColors(foreColors, backColors)
var backColors, foreColors;

window.onload = function()
{
    backColors = document.getElementById("backColors");
    foreColors = document.getElementById("foreColors");

    backColors.onchange = foreColors.onchange = function()
    {
        changeColors(backColor.options[backColor.selectedIndex].value, foreColor.options[foreColor.selectedIndex].value);
    };
};
-->
</script>

<h1>Color Picker Website</h1>

<form name="backColor">
<form name="foreColor">
<select id="foreground">
   <option value="#ff0000">Red</option>
   <option value="#00ff00">Green</option>
   <option value="#0000ff">Blue</option>
</select>
    <td width="81">&nbsp;</td>
    </tr>
    <select name="background" id="background">
      <option value="#ff0000">Red</option>
      <option value="#00ff00">Green</option>
      <option value="#0000ff">Blue</option>
    </select>
</table>
<input type="button" value="Test Colors" onclick="changeColors();" />
<p>
  <label>
  <textarea name="txtarea" id="txtArea" style="background:#ffffff"></textarea>
  </label>
</p>

</form>
</body>
</html>


[Ovu poruku je menjao Daffa dana 06.04.2008. u 23:06 GMT+1]

[Ovu poruku je menjao Aleksandar Ružičić dana 07.04.2008. u 15:34 GMT+1]
[ Aleksandar Ružičić @ 07.04.2008. 14:37 ] @
pa nije bas tako, probaj ovako:
Code:


<script language="JavaScript">
<!--

function changeColors(fore, back)
{
   var textarea = document.getElementById("txtArea");
   textarea.style.backgroundColor = back;
   textarea.style.color = fore;
}

window.onload = function()
{
    var backColors = document.getElementById("backColors");
    var foreColors = document.getElementById("foreColors");

    backColors.onchange = foreColors.onchange = function()
    {
        changeColors(backColor.options[backColor.selectedIndex].value, foreColor.options[foreColor.selectedIndex].value);
    };
};
-->
</script>

<h1>Color Picker Website</h1>

<form>
<select id="foreColors">
   <option value="#ff0000">Red</option>
   <option value="#00ff00">Green</option>
   <option value="#0000ff">Blue</option>
</select>
    <td width="81">&nbsp;</td>
    </tr>
    <select id="backColors">
      <option value="#ff0000">Red</option>
      <option value="#00ff00">Green</option>
      <option value="#0000ff">Blue</option>
    </select>
</table>
<p>
  <label>
  <textarea name="txtarea" id="txtArea" style="background:#ffffff"></textarea>
  </label>
</p>

</form>
</body>
</html>


i ubuduce, kada postujes kod koristi [code][/code] tagove

poz
[ Daffa @ 07.04.2008. 15:55 ] @
Moram ti reci da ovo jednostavno ne radi. Nista se ne desava pri pokretanju. Bice da sam ja negdje pogrijesio, sto si ti previdio u ovom kodu. Naravno, puno hvala na tvom trudu. Cijenim to na isti nacin (radilo ovo ili ne). U slucaju da nadjes bolje resenje, molim te da mi javis. Pozdrav. (Izvinjavam se zbog tagova, nisam ni obratio paznju.)
[ Aleksandar Ružičić @ 07.04.2008. 20:51 ] @
izvini moja greska, deklarisao sam backColors a koristio backColor, evo ispravljeno:
Code:

<html>
<body>
<script language="JavaScript">
<!--

function changeColors(fore, back)
{
   var textarea = document.getElementById("txtArea");
   textarea.style.backgroundColor = back;
   textarea.style.color = fore;
}

window.onload = function()
{
    var backColors = document.getElementById("backColors");
    var foreColors = document.getElementById("foreColors");

    backColors.onchange = foreColors.onchange = function()
    {
        changeColors(backColors.options[backColors.selectedIndex].value, foreColors.options[foreColors.selectedIndex].value);
    };
};
-->
</script>

<h1>Color Picker Website</h1>

<form>
<select id="foreColors">
   <option value="#ff0000">Red</option>
   <option value="#00ff00">Green</option>
   <option value="#0000ff">Blue</option>
</select>
    <td width="81">&nbsp;</td>
    </tr>
    <select id="backColors">
      <option value="#ff0000">Red</option>
      <option value="#00ff00">Green</option>
      <option value="#0000ff">Blue</option>
    </select>
</table>
<p>
  <label>
  <textarea name="txtarea" id="txtArea" style="background:#ffffff"></textarea>
  </label>
</p>

</form>
</body>
</html>

ovaj put sam ga testirao i radi
[ Daffa @ 07.04.2008. 21:30 ] @
E, da si mi negdje blizu, castio bih te pice zbog ovoga. Puno ti hvala brate, stvarno si mi mnogo pomogao. Hvala, jos jednom.
[ Aleksandar Ružičić @ 07.04.2008. 23:13 ] @
nema na cemu :)

a evo ti sad taj isti kod samo u jQueriju, pa se ti cudi :)
Code:

$(function()
{
   $('#foreColors, #backColors').change(function()
   {
      $('#txtArea').css
       ({
           'color': $('#foreColors').val(),
           'background-color': $('#backColors').val()
       });
   });
});

:D
[ Daffa @ 07.04.2008. 23:25 ] @
Haha... Hvala i na tome. Proucicu ga kasnije. :)