Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: изменить цвет текста ява скриптом
 
 автор: localGhost   (10.02.2005 в 03:31)   письмо автору
 
 

Есть таблица, при наведении курсора на ячейку изменяеться ее цвет.. также хотелось бы чтоб изменялся и цвет текста.... поможите как енто сделать?

Блин, не там сообщение создал......... господа админы исправте эту оплошностьпожалуста ))

   
 
 автор: glsv (Дизайнер)   (10.02.2005 в 09:55)   письмо автору
 
   для: localGhost   (10.02.2005 в 03:31)
 

Нужно обращаться к свойству style.color
Вот пример обращения:

<html>
<head>
<title></title>
<script language='javascript'>
  function color1(id)
  {
    id.style.color = "00FF00";
  }
  function color2(id)
  {
    id.style.color = "000000";
  }
  
</script>
</head>
<body>
<table border="0" summary="">
    <tr>
        <td onmouseover="color1(this)" onmouseout="color2(this)">Текст</td>
        <td></td>
    </tr>
</table>
</body>
</html>

   
 
 автор: localGhost   (10.02.2005 в 10:08)   письмо автору
 
   для: glsv (Дизайнер)   (10.02.2005 в 09:55)
 

не прокатывает, вот часть скрипта, может поможет:

<script>
function Hilite() {
  var elemA = getA(element);
  if(elemA == null) return;
  var elemTD = element;

  saveBGColor  = elemTD.bgColor;  
  elemTD.bgColor = myHilightColor;
  elemTD.style.cursor="default";
  // пытаюсь изменить цвет текста:
  elemTD.style.color = "white";
  window.status = elemA.href;
}
</script>

пробовал вместо
elemTD.style.color = "white";
писать
elemTD.fgColor = "white";
все равно никакого результата....

   
 
 автор: glsv (Дизайнер)   (10.02.2005 в 11:29)   письмо автору
 
   для: localGhost   (10.02.2005 в 10:08)
 

>// пытаюсь изменить цвет текста:
elemTD.style.color = "white";
Странно... должно работать.
Вы в каком браузере смотрите?
Приведите весь код: функцию getA() и саму ячейку таблицы

   
 
 автор: localGhost   (11.02.2005 в 03:27)   письмо автору
 
   для: glsv (Дизайнер)   (10.02.2005 в 11:29)
 

вобщщем использую это все в интернет эксплорере, потому как в друг браузерах это все работает некоректно.....
весь код отображения меню в файле, вот код самой ячейки:


<DIV class=nav id=ml_2 style="Z-INDEX: 10; LEFT: 0px; VISIBILITY: hidden; WIDTH: 140px; POSITION: absolute; TOP: 0px; ">
<table border="0" cellpadding="0" cellspacing="1" bgcolor="#aca899" shadowOpacity="1">
<tr><td><table width="140" border="0" cellpadding="2" cellspacing="2" bgcolor="#FFFFFF">
<tr  style="BEHAVIOR: url(conf/hilightcell.htc)" HilightColor="#316ac5">
<td align="left" valign="middle"> <a href="#" class="menu">Ссылка...
</a></td>
</tr>
</table>
</td>
</tr>
</table>
</DIV>


и там еще ниже по тексту небольшой ява скриптки который "инициализирует" меню.


ЗЫ: Дизайнеру: вам на личку отправил адрес страницы где можно визуально посмотреть работу скрипта.

ЗЗЫ: может по ходу дела подскажете, как сделать чтоб можно было использовать это меню в остальных браузерах?

   
 
 автор: glsv (Дизайнер)   (11.02.2005 в 10:16)   письмо автору
 
   для: localGhost   (11.02.2005 в 03:27)
 

У вас там ссылка стоит - поэтому указание цвет для ячейки не срабатывает.

Измените функцию

function Hilite()
{
    //if(element.tagName != "TR") return;
    var elemA = getA(element);
    if(elemA == null) return;
    var elemTD = element;
    
    saveBGColor  = elemTD.bgColor;  
    elemTD.bgColor = myHilightColor;
       elemTD.style.cursor="default";
    elemTD.style.color = "white";
    elemA.style.color = "white";

    window.status = elemA.href;
}

Нужно добавить строку
elemA.style.color = "white";
Это изменяет цвет ссылок.

Приведенный вами код будет работать только в IE.
Могу предложить очень простой способ сделать подсветку фона для Oper-ы и Mozill-ы
Пропишите стили

<style>
  .mytable td:hover{background-color:#3366CC;}
</style>


mytable - это имя класса таблицы
Пропишите его здесь

<table class=mytable border="0" cellpadding="0" cellspacing="1" bgcolor="#aca899" 


Вот полный код:

<html>
<head>
<style>
  .mytable td:hover{background-color:#3366CC;}
</style>
</head>
<body>
<table class=mytable border="0" cellpadding="0" cellspacing="1" bgcolor="#aca899" shadowOpacity="1"> 
<tr><td><table width="140" border="0" cellpadding="2" cellspacing="2" bgcolor="#FFFFFF"> 
<tr  style="BEHAVIOR: url(hilightcell.htc)" HilightColor="#316ac5"> 
<td align="left" valign="middle"><a href="#" class="menu">Ссылка... 
</a></td> 
</tr> 
</table> 
</body>
</html>

   
 
 автор: localGhost   (14.02.2005 в 06:55)   письмо автору
 
   для: glsv (Дизайнер)   (11.02.2005 в 10:16)
 

большое спасибо... а помогите пожалуйста теперь сделать так что обратно черный текст возвращался когда курсор на другую ссылку наводишь..... остаеться белый...

а насчет других браузеров.. там получаеться проблема что не появляеться сам список при наведении курсора... пришлось делать альтернативный вариант на формах... только пока никак не могу сделать чтоб средствами пхп определялся тип браузера, но думаю скоро эту проблему решу....

   
 
 автор: localGhost   (17.02.2005 в 07:53)   письмо автору
 
   для: localGhost   (14.02.2005 в 06:55)
 

народ.... ну помогите пожалуйста.... как там цве вернуть в исходную..... просто в яве не настолько хорошо секу.......

   
 
 автор: cernos   (17.02.2005 в 12:37)   письмо автору
 
   для: localGhost   (17.02.2005 в 07:53)
 

вОТ НА ПОДЕРЗАЙ ВЫ НЕ ПРАВИЛЬНО ВСЁ ДЕЛАЛИ, НАДО ДЕЛАТЬ ВСЁ В rgb
Т.Е. ЦВЕТ объявлять по (255,255,255), посмотрите вот в примере!
файл прикреплен!
ИЛИ вот как можно шрифт уменьшается и увеличивается при этом идет смена цвета который хранится в массиве col
setinterval - функция которая переодически вызывает другую

<html>
<head>
    <title>Untitled</title>
    <script type="text/javascript" language="JavaScript">
var _size=0;
var d=10;
var text=0;

var a=1;
function colo()
{


var col=new Array('rgb(12,25,0)','rgb(0,255,0)','rgb(0,255,20)','rgb(12,255,12)','rgb(31,255,13)'
,'rgb(255,255,120)'
,'rgb(255,255,50)'
,'rgb(255,200,0)'
,'rgb(255,120,0)'
,'rgb(255,100,0)'
,'rgb(255,40,0)'
,'rgb(255,0,0)','rgb(120,0,0)','rgb(50,0,0)','rgb(50,0,0)','rgb(50,0,0)','rgb(50,0,0)','rgb(50,0,0)');



if(a==1)
{
text++;
if(text==17){
a=0;
}
}
if(a==0){ text--;  if(text==0){a=1;}
}







document.getElementById('p1').style.color = col[text];
document.getElementById('p1').style.fontSize = _size + 'px';
_size += d;
if (_size==200) d = -10;
if (_size==10) d = 10;
}


function _init() {
    setInterval(colo,75);
}
</script>
</head>

<body onload='_init()'>
<p id="p1" align="center">Text</p>



</body>
</html>

   
 
 автор: cernos   (17.02.2005 в 12:56)   письмо автору
 
   для: cernos   (17.02.2005 в 12:37)
 

Вот так сделал я: легко и быстро...
Тут я использовал ссылку, можно использоватеть простой <p></p>, но обязательно нужно вписать тогда id="_link";
Если менять id, то его надо менять как в теге так и в функциях - Вот тут getElementById('ВОТ ТУТ').
Ну а так всё ОК и работает это во всех броузерах.... :-))

<html>
<head>
    <title>Untitled</title>
    <script type="text/javascript" language="JavaScript">
var col=new Array('rgb(255,255,255)','rgb(0,0,0)');
function white()
{
document.getElementById('_link').style.color = col[0];
}
function black()
{
document.getElementById('_link').style.color = col[1];
}
</script>
</head>

<body onload='black()'>
<a href="#" id="_link" onmouseout="black()" onmouseover="white()">LINK</a>



</body>
</html>

   
 
 автор: localGhost   (18.02.2005 в 04:23)   письмо автору
 
   для: cernos   (17.02.2005 в 12:56)
 

Большое всем спасибо!!!!!!! очень вам благодарен!!!
тема закрыта!

   
 
 автор: cernos   (17.02.2005 в 12:46)   письмо автору
 
   для: localGhost   (17.02.2005 в 07:53)
 

если делать на яве то можно написать две функции подобной выше описанной и мной данной.

одна функция делат белый цвет( white() ) а другая черный (black)

теперь в таблице делаем так
onmouseover="white()" - выполняется когда мышка наводится
onmouseout="black()" - выполняется когда мышку убираешь с этого места
Ладно жди ща напишу!

   
 
 автор: glsv (Дизайнер)   (17.02.2005 в 12:53)   письмо автору
 
   для: localGhost   (14.02.2005 в 06:55)
 

В функции Hilite() вам нужно запомнить цвет ссылки перед ее измененим

if(elemA == null) return;
else saveAColor  = elemA.style.color;  


А в функции Restore() заново этот цвет присвоить.

   var elemA = getA(element);
   if(elemA == null) return;
   else elemA.style.color=saveAColor; 



function Hilite()
{
  var elemA = getA(element);
  if(elemA == null) return;
  else saveAColor  = elemA.style.color;  

  var elemTD = element;
    
  saveBGColor  = elemTD.bgColor;  
  elemTD.bgColor = myHilightColor;
  elemTD.style.cursor="default";
  elemTD.style.color = "white";
  elemA.style.color = "white";
  window.status = elemA.href;
}
    
function Restore()
{
  var elemTD = element;
  elemTD.bgColor = saveBGColor;
    
   var elemA = getA(element);
   if(elemA == null) return;
   else elemA.style.color=saveAColor; 

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования