Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.07.2013, 13:20
Аспирант
Отправить личное сообщение для jule Посмотреть профиль Найти все сообщения от jule
 
Регистрация: 23.02.2013
Сообщений: 57

onclick & css
Ребят, мне нужна ваша помощь. Я хочу добавить следующуу функцию на свой сайт: при клике допустм, на ссылку в определенном месте должен появится блок.
Например,
<span onclick="<!--css код-->>Click me</span>
. Даже не обязательно так,но чтобы скрипт выполнял задачу.В css коде должен быть примерно такой код: .block { left:44px; } . Изначальное положение блока: .block { position:absolute; left:10px; top:10px;} . Ну, как-то так. Если нужны будут уточнение - спрашивайте.
Ответить с цитированием
  #2 (permalink)  
Старый 04.07.2013, 13:28
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

<span onclick="$('.block').css('left', '44px')"></span>
Ответить с цитированием
  #3 (permalink)  
Старый 04.07.2013, 15:22
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

как вариант:
<div onclick="this.setAttribute('class', 'myclass');">траляля</div>

класс myclass заранее описать в цсс стилях
Ответить с цитированием
  #4 (permalink)  
Старый 04.07.2013, 15:25
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

а лучше так:
var addClass = function(obj, cls)
	{
	var cl = obj.className.split(' ');
	for(var i = 0; i < cl.length; i++)
		if (cl[i] == cls)
			return;
	cl.push(cls);
	obj.className = cl.join(' ');
	}
var removeClass = function(obj, cls)
	{
	var cl = obj.className.split(' ');
	for(var i = 0; i < cl.length; i++)
		if (cl[i] == cls)
			{
			cl.splice(i, 1);
			break;
			}
	obj.className = cl.join(' ');
	}


<div onclick="addClass(this, 'myclass');">траляля</div>
Ответить с цитированием
  #5 (permalink)  
Старый 04.12.2014, 22:51
Новичок на форуме
Отправить личное сообщение для Radrigo Посмотреть профиль Найти все сообщения от Radrigo
 
Регистрация: 04.12.2014
Сообщений: 4

Тоже есть вопрос по поводу onclick и css

Сделал на сайте увеличение шрифта следующим образом
<ul>
<li onclick="document.getElementById('idblock').className = 'classFirst';">Маленький</li>
<li onclick="document.getElementById('idblock').className = 'classSecond';">Средний</li>
<li onclick="document.getElementById('idblock').className = 'classThird';">Большой</li>
</ul>
<div id="idblock" class="classFirst">Текст Текст Текст Текст Текст </div>


Можно ли при помощи css менять стили именно тех элементов "Маленький, Средний, Большой" которые на данный момент активны. Допустим по умолчанию загружается "Маленький" то эта надпись была бы красной, а при переключении красным становилась бы та надпись, которую переключили.
Ответить с цитированием
  #6 (permalink)  
Старый 05.12.2014, 08:57
Профессор
Отправить личное сообщение для jsnb Посмотреть профиль Найти все сообщения от jsnb
 
Регистрация: 15.03.2014
Сообщений: 561

Сообщение от Radrigo
Можно ли при помощи css менять стили именно тех элементов "Маленький, Средний, Большой" которые на данный момент активны. Допустим по умолчанию загружается "Маленький" то эта надпись была бы красной, а при переключении красным становилась бы та надпись, которую переключили.
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<style>
.activeLi {
  color: red;
}
</style>
</head>
<body>

<ul>
  <li class="fontSelect activeLi" onclick="document.getElementById('idblock').className = 'classFirst';">Маленький</li>
  <li class="fontSelect" onclick="document.getElementById('idblock').className = 'classSecond';">Средний</li>
  <li class="fontSelect" onclick="document.getElementById('idblock').className = 'classThird';">Большой</li>
</ul>
<div id="idblock" class="classFirst">Текст Текст Текст Текст Текст </div>

<script>
(function() {
  var lis = document.querySelectorAll('.fontSelect');

  function highlightActive() {
    for(var i = 0; i < lis.length; i++) lis[i].className = 'fontSelect';
    this.className += ' activeLi';
  }

  for(var i = 0; i < lis.length; i++) lis[i].addEventListener('click', highlightActive);
})();
</script>

</body>
</html>

Последний раз редактировалось jsnb, 05.12.2014 в 09:00.
Ответить с цитированием
  #7 (permalink)  
Старый 05.12.2014, 14:49
Новичок на форуме
Отправить личное сообщение для Radrigo Посмотреть профиль Найти все сообщения от Radrigo
 
Регистрация: 04.12.2014
Сообщений: 4

Спасибо=)
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
OnClick ячейки таблицы и ссылки в этой ячейке MasDen Javascript под браузер 2 30.06.2011 10:34
JQuery CSS анализатор javascript jQuery 2 15.08.2010 21:27
если (свойство css == 2) свойство css = 1; funkypublic Events/DOM/Window 1 09.06.2010 17:39
Подскажите по CSS меню Александр_1988 Элементы интерфейса 1 17.05.2010 11:58
Событие onClick avtor01 Events/DOM/Window 3 03.09.2009 18:01