Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Title text при клике (https://javascript.ru/forum/dom-window/59571-title-text-pri-klike.html)

todayz 17.11.2015 02:00

Title text при клике
 
Не бейте новичка ))

Допустим у меня есть несколько элементов вида

<a href="#" title="String 1"><span style="background-color: #5d4595"></span></a>
<a href="#" title="String 2"><span style="background-color: #6d4595"></span></a>
<a href="#" title="String 3"><span style="background-color: #7d4595"></span></a>

в таком виде подсказка всплывёт при наведении мыши. А возможно ли заставить title показаться при клике по этой ссылке?

С компом проблем нет, а вот на планшете или мобиле этот title увидеть не получается, поскольку курсора там нет.

ksa 17.11.2015 10:29

Цитата:

Сообщение от todayz
А возможно ли заставить title показаться при клике по этой ссылке?

Так при клике идет переход по ссылке...

todayz 17.11.2015 12:43

Цитата:

Сообщение от ksa (Сообщение 396456)
Так при клике идет переход по ссылке...

В моём случае при клике нет перехода по ссылке. А выбирается span, по которому кликнули.



<a href="#" title="String 1"><span style="background-color: #5d4595"></span></a>

ksa 17.11.2015 14:23

Цитата:

Сообщение от todayz
В моём случае при клике нет перехода по ссылке. А выбирается span, по которому кликнули.

Тогда ты можешь и подсказку показать... :yes:

todayz 17.11.2015 14:57

Цитата:

Сообщение от ksa (Сообщение 396515)
Тогда ты можешь и подсказку показать... :yes:

А можно подробнее? Я делал это со скрытием и показом дива. Получилось дико не удобно. И поскольку спанов у меня на странице 70+, то мне нужно заставить появиться именно родной title для выбранного span он появится в нужном мне месте.

ksa 17.11.2015 15:43

Цитата:

Сообщение от todayz
А можно подробнее?

Типа иллюстрации...

<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1251' />
<script src='http://code.jquery.com/jquery-latest.js'></script>
<!--
<script src="https://code.angularjs.org/1.3.9/angular.min.js"></script>
<script src="https://code.angularjs.org/1.3.9/angular-route.js"></script>
-->
<style type='text/css'>
#message {
	display: none;
}
span {
	display: inline-block;
	padding: 10px;
	background-color: #5d4595;
}
</style>
<script type='text/javascript'>
$(function(){
	var win;
	$('a').click(function(){
		if (win) {
			clearTimeout(win);
		};
		$('#message').stop().hide().text($(this).attr('title')).fadeIn();
		win=setTimeout(function(){
			$('#message').stop().fadeOut();
		},2000);
	});
});
</script>
</head>
<body>
<a href="#" title="String 1"><span>1</span></a>
<a href="#" title="String 2"><span>2</span></a>
<a href="#" title="String 3"><span>3</span></a>
<div id='message'></div>
</body>
</html>

рони 17.11.2015 15:45

todayz,
a:active:after{
   content: attr(title);
   color: red;
 }

todayz 18.11.2015 16:51

Цитата:

Сообщение от ksa (Сообщение 396529)
Типа иллюстрации...

<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1251' />
<script src='http://code.jquery.com/jquery-latest.js'></script>
<!--
<script src="https://code.angularjs.org/1.3.9/angular.min.js"></script>
<script src="https://code.angularjs.org/1.3.9/angular-route.js"></script>
-->
<style type='text/css'>
#message {
	display: none;
}
span {
	display: inline-block;
	padding: 10px;
	background-color: #5d4595;
}
</style>
<script type='text/javascript'>
$(function(){
	var win;
	$('a').click(function(){
		if (win) {
			clearTimeout(win);
		};
		$('#message').stop().hide().text($(this).attr('title')).fadeIn();
		win=setTimeout(function(){
			$('#message').stop().fadeOut();
		},2000);
	});
});
</script>
</head>
<body>
<a href="#" title="String 1"><span>1</span></a>
<a href="#" title="String 2"><span>2</span></a>
<a href="#" title="String 3"><span>3</span></a>
<div id='message'></div>
</body>
</html>

Спасибо за совет...

Нечто подобное я уже пробовал...

Проблема в том, что див message находится в конце. А таких спанов у меня 70+ на странице. И в конечном итоге для того чтобы увидеть div message придётся прокруткой пользоваться. Это не удобно. А для мобильников вообще не применимо :no:

ksa 18.11.2015 16:55

Цитата:

Сообщение от todayz
див message находится в конце

И что с того? :D
Меняй ему ЦСС-свойства на нужные тебе... Я же всю задачку тебе бесплатно не буду делать. :)

todayz 18.11.2015 17:18

Цитата:

Сообщение от рони (Сообщение 396531)
todayz,
a:active:after{
   content: attr(title);
   color: red;
 }

А вот этот вариант просто на 5+!
Жаль только что надпись пропадает, когда на ссылку больше не жмёшь... Может есть идеи?


Часовой пояс GMT +3, время: 21:25.