Mr.Cherry Posted December 11, 2005 Report Share Posted December 11, 2005 Ни как не могу с javascript разобраться. Как сделать чтобы картинка при нажатии была одной при наведении другой что то типа: <img src="/image1.gif" OnClick="/image2.gif" OnOver="/image3.gif"> Или что то в этом роде. Link to comment Share on other sites More sharing options...
roman kovrigin Posted December 12, 2005 Report Share Posted December 12, 2005 <a href="url" onMouseOver="document.pic1.src='a.gif'" onMouseOut="document.pic1.src='b.gif'"><IMG SRC="b.gif" BORDER=0 NAME="pic1"></a> вот нечто вот такое надо делать свойство src адресуется по имени pic1 впринципе можно так менять соседние картинки, главное указать их имя Link to comment Share on other sites More sharing options...
Mr.Cherry Posted December 12, 2005 Author Report Share Posted December 12, 2005 А как быть например со сменом цвета фона таблицы? У таблицы(и её тегов) атрибута NAME нету. Link to comment Share on other sites More sharing options...
Darhazer Posted December 12, 2005 Report Share Posted December 12, 2005 У всех елементов есть атрибут ID и Name Насчет картинке: <img src="image1.gif" onmouseover="this.src='image2.gif'" onmouseout="this.src='image1.gif'" onclick="this.src='image3.gif'"> Насчет таблице, надо менят style.background-color Link to comment Share on other sites More sharing options...
Mr.Cherry Posted December 12, 2005 Author Report Share Posted December 12, 2005 ID у всех тегов есть, а name нет. С картинкой я вроде справился, с таблицей не выходит. Вот код: <table> <tr> <td width="100" height="30" bgcolor="#FFFFFF" onMouseOver="this.bgcolor='#ff0000'" onMouseOut="this.bgcolor='#ffffff'"></td> </tr> </table> Link to comment Share on other sites More sharing options...
verba Posted December 13, 2005 Report Share Posted December 13, 2005 (edited) кажись так <html><head><script type="text/javascript">var s, c1, c2, r1, g1, b1, r2, g2, b2;var fTimeout, fObj, fSteps = 25, fDelay = 5;function Fade(obj, color1, color2) { if (fTimeout) {clearTimeout(fTimeout);if (fObj) fObj.style.backgroundColor = c2; } fObj = obj; c1 = color1; c2 = color2; r1 = eval('0x' + c1.substring(0,2)); g1 = eval('0x' + c1.substring(2,4)); b1 = eval('0x' + c1.substring(4,6)); r2 = eval('0x' + c2.substring(0,2)); g2 = eval('0x' + c2.substring(2,4)); b2 = eval('0x' + c2.substring(4,6)); s = 0; DoFade();}function DoFade() { var d = s/fSteps, m = 1 - d; fObj.style.backgroundColor = "#" +Dec2Hex(r1 * m + r2 * d) +Dec2Hex(g1 * m + g2 * d) +Dec2Hex(b1 * m + b2 * d); if (s < fSteps) fTimeout = setTimeout('DoFade()', fDelay); s++;}function Dec2Hex(Dec) { var hexChars = new Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"); var a = parseInt(Dec) % 16, b = (parseInt(Dec) - a)/16; var hex = "" + hexChars[b] + hexChars[a]; return hex;}</script></head><body><table border=1><tr><td onmouseover="Fade(this, 'ff6666', '992222')" onmouseout="Fade(this, '992222', 'ff6666')">текст таблицы</td></tr></table></body></html> Edited December 13, 2005 by verba Link to comment Share on other sites More sharing options...
Mr.Cherry Posted December 13, 2005 Author Report Share Posted December 13, 2005 Ничего не понял. Можно попроще? И зачем из десятичной в шестнадцатиричную систему переводить? Link to comment Share on other sites More sharing options...
roman kovrigin Posted December 13, 2005 Report Share Posted December 13, 2005 <table><tr><td width="100" height="30" bgcolor="#FFFFFF" onMouseOver="this.style.backgroundColor='#ff0000'" onMouseOut="this.style.backgroundColor='#ffffff'">1111111111</td></tr></table> вот и все Ничего не понял. Можно попроще? И зачем из десятичной в шестнадцатиричную систему переводить? там переводится для того что бы переход цветов был нормальный и постепенный. кроме того используется написание через функции - что при больших таблицах сильно сэкономит на размере html файла Link to comment Share on other sites More sharing options...
Mr.Cherry Posted December 13, 2005 Author Report Share Posted December 13, 2005 Ага, спасибо, работает! А почему bgcolor нельзя менять, это же одно и тоже? Link to comment Share on other sites More sharing options...
roman kovrigin Posted December 13, 2005 Report Share Posted December 13, 2005 Если какойто вопрос не разрешим то может быть стоит принять его за данность и жить дальше? Ж) Link to comment Share on other sites More sharing options...
Mr.Cherry Posted December 13, 2005 Author Report Share Posted December 13, 2005 :) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now