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

HTML+CSS+JavaScript

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

 

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

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

тема: Стиль гиперссылки
 
 автор: Sten   (20.03.2009 в 10:32)   письмо автору
 
 

Такая проблема. У меня в левой колонке список категорий, справа выводятся заметки по этим категориям
Хочу что б после нажатия на ссылку (название категории) она поменяла стиль и стала отличной от всех и была до тех пор такой, пока я бы не щелкнул по другой.

  Ответить  
 
 автор: PAT   (20.03.2009 в 12:26)   письмо автору
 
   для: Sten   (20.03.2009 в 10:32)
 

<style>
a.normal {изначальный стиль для ВСЕХ ссылок левой колонки}
a.fromclick {стиль для той ссылки левой колонки, по которой кликнули}
</style>

<script>
var Z;

function MyClick (y)
{
var x = y || window.event, w = x.srcElement || x.target;
if (self.Z) Z.className = 'normal';
Z = w; Z.className = 'fromclick';
return false;
}
</script>

Класс "normal" и функцию (или часть её, потому как у вас какой-то обработчик клика на ссылках уже, вероятно, имеется, раз ссылки открывают не новую страницу, а меняют содержимое правой колонки) пропишите всем ссылкам левой колонки.
Прописывать функцию следует так:
<a onclick="return MyClick (event)">ссылка</a>

  Ответить  
 
 автор: Sten   (20.03.2009 в 12:45)   письмо автору
 
   для: PAT   (20.03.2009 в 12:26)
 

Вот такой у меня код в php, как мне всё это в моем случае прописать.

<?php 
$result2 
mysql_query ("SELECT * FROM categories",$db);
if (!
$result2)
{
echo 
"<p>Запрос на выдорку из базы данных не прошел. Напишите об этом администатору<br><strong>Код ошибки</strong></p>";
exit (
mysql_error());
}
if (
mysql_num_rows ($result2)>0)
{
$myrow2 mysql_fetch_array ($result2);
do
{
printf ("<p class='point'><img src='img/arr.jpg' height='10' width='10'><a class='normal' href='view_cat.php?cat=%s'>%s</a></p>",$myrow2 ["id"], $myrow2 ["title"]);
}
while (
$myrow2 mysql_fetch_array ($result2));
}
else
{
echo 
"<p>Информация по запросу не может быть извлечена в таблице нет записей</p>";
exit ();
}
?>

Стили у меня в таблице стилей прописаны

  Ответить  
 
 автор: PAT   (20.03.2009 в 13:08)   письмо автору
 
   для: Sten   (20.03.2009 в 12:45)
 

printf ("<p class='point'><img src='img/arr.jpg' height='10' width='10'><a class='normal' href='view_cat.php?cat=%s' onclick='return MyClick (event)'>%s</a></p>",$myrow2 ["id"], $myrow2 ["title"]);


Ну а блок <script></script> пропишите в заголовке.

Только я что-то не вижу у вас ВАШЕЙ обработки клика.
"Колонки" у вас - это паллиатив слову "фрейм"?

  Ответить  
 
 автор: guye   (20.03.2009 в 15:32)   письмо автору
 
   для: Sten   (20.03.2009 в 10:32)
 

можно просто сделать глобальную переменную и при каждом клике передавать ей ссылку что то типа такого
onclick="f(this)"
function f(){
old_this.style.color="";
this.style.color="";
old_this=this
}

  Ответить  
Rambler's Top100
вверх

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