Javascript.RU

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

Работа с якорями или с id?
Есть файл с такой структурой
<div class="game" id="a1">Какой-то текст1
<a href="#a2">Ссылка2</a>
<a href="#a3">Ссылка3</a>
</div>
<div class="game" id="a2">Какой-то текст2
<a href="#a3">Ссылка3</a>
<a href="#a1">Ссылка1</a>
</div>
<div class="game" id="a3">Какой-то текст3
<a href="#a4">Ссылка4</a>
<a href="#a2">Ссылка2</a>
</div>
<div class="game" id="a4">Какой-то текст4
<a href="#a2">Ссылка2</a>
<a href="#a1">Ссылка1</a>
</div>

Как получить измененное id, при переходе по якорю чтобы потом произвести с div'ом какие-то действия?
Пробовал сделать это при помощи якорей, но показывает якорь того div'a в котором нажимается на ссылку. Подскажите. Заранее благодарен.

Последний раз редактировалось Stroy, 08.11.2014 в 13:17.
Ответить с цитированием
  #2 (permalink)  
Старый 08.11.2014, 13:37
Профессор
Отправить личное сообщение для Tecvid Посмотреть профиль Найти все сообщения от Tecvid
 
Регистрация: 13.12.2013
Сообщений: 175

html
<div class="game" id="a1">Какой-то текст1
<a href="#a2">Ссылка2</a>
<a href="#a3">Ссылка3</a>
</div>
<div class="game" id="a2">Какой-то текст2
<a href="#a3">Ссылка3</a>
<a href="#a1">Ссылка1</a>
</div>
<div class="game" id="a3">Какой-то текст3
<a href="#a4">Ссылка4</a>
<a href="#a2">Ссылка2</a>
</div>
<div class="game" id="a4">Какой-то текст4
<a href="#a2">Ссылка2</a>
<a href="#a1">Ссылка1</a>
</div>


js

document.getElementsByTagName('a').onclick = function () {
	document.getElementsByClassName('game').setAttribute('id', this.getAttribute('href'));
}
Ответить с цитированием
  #3 (permalink)  
Старый 08.11.2014, 13:47
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,072

Tecvid,
Ответить с цитированием
  #4 (permalink)  
Старый 08.11.2014, 13:49
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,072

Сообщение от Stroy
измененное id
это что?
Ответить с цитированием
  #5 (permalink)  
Старый 08.11.2014, 13:54
Профессор
Отправить личное сообщение для kostyanet Посмотреть профиль Найти все сообщения от kostyanet
 
Регистрация: 23.10.2010
Сообщений: 2,718

Сообщение от Stroy
Есть файл с такой структурой
Сделайте другую структуру. Зачем самого себя загонять в задницу?
Ответить с цитированием
  #6 (permalink)  
Старый 08.11.2014, 15:17
Аватар для Stroy
Интересующийся
Отправить личное сообщение для Stroy Посмотреть профиль Найти все сообщения от Stroy
 
Регистрация: 29.10.2014
Сообщений: 25

Сообщение от рони Посмотреть сообщение
это что?
При нажатии на ссылку в диве, я попадаю в другой див(с другим id),свойства которого мне и нужно поменять.
Ответить с цитированием
  #7 (permalink)  
Старый 08.11.2014, 15:20
Аватар для Stroy
Интересующийся
Отправить личное сообщение для Stroy Посмотреть профиль Найти все сообщения от Stroy
 
Регистрация: 29.10.2014
Сообщений: 25

Сообщение от kostyanet Посмотреть сообщение
Сделайте другую структуру. Зачем самого себя загонять в задницу?
Каким образом Вы предлагаете поменять подобную структуру? Единственный вариант(который я вижу)-разбить на файлы. Но около 600 файлов вместо одного...
Ответить с цитированием
  #8 (permalink)  
Старый 08.11.2014, 15:33
Аватар для MallSerg
Профессор
Отправить личное сообщение для MallSerg Посмотреть профиль Найти все сообщения от MallSerg
 
Регистрация: 07.03.2011
Сообщений: 1,127

Сообщение от Stroy
свойства которого мне и нужно поменять
Что это подразумевает?
если нужно изменить стили у этого div то существует селектор target
<p data-height="348" data-theme-id="0" data-slug-hash="EoBJF" data-default-tab="result" data-user="elad2412" class='codepen'>See the Pen <a href='http://codepen.io/elad2412/pen/EoBJF/'>CSS Target Event</a> by Elad Shechter (<a href='http://codepen.io/elad2412'>@elad2412</a>) on <a href='http://codepen.io'>CodePen</a>.</p>
<script async src="//assets.codepen.io/assets/embed/ei.js"></script>
Ответить с цитированием
  #9 (permalink)  
Старый 08.11.2014, 15:50
Профессор
Отправить личное сообщение для Tecvid Посмотреть профиль Найти все сообщения от Tecvid
 
Регистрация: 13.12.2013
Сообщений: 175

Сообщение от Stroy
Каким образом Вы предлагаете поменять подобную структуру?
лично я предлагаю изменить на вот такую структуру
<div class="game" id="a1">Какой-то текст1
	<a href="?id=a2">Ссылка2</a>
	<a href="?id=a3">Ссылка3</a>
	</div>
	<div class="game" id="a2">Какой-то текст2
	<a href="?id=a3">Ссылка3</a>
	<a href="?id=a1">Ссылка1</a>
	</div>
	<div class="game" id="a3">Какой-то текст3
	<a href="?id=a4">Ссылка4</a>
	<a href="?id=a2">Ссылка2</a>
	</div>
	<div class="game" id="a4">Какой-то текст4
	<a href="?id=a2">Ссылка2</a>
	<a href="?id=a1">Ссылка1</a>
	</div>


а потом получить данные из запроса get посредством js
var get = {};

	if (location.search) {
		var c = location.search.substring(1).split('&');
		
		for (var i = 0; i < c.length; i++) { 
			var ar = c[i].split('=');
			
			if (ar[0] != '') {
				get[ar[0]] = unescape(ar[1]);
			}
		}
	}
	
	var id = get['id'];


и затем поставить переменную id в атрибут id, советую с помощью jquery, так вроде проще

$('.game').attr('id', id);
Ответить с цитированием
  #10 (permalink)  
Старый 08.11.2014, 15:55
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,072

Stroy,
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
    .orange {
    background: #FFCC00;
  }
  </style>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
  <script>
     $(function(){
       var s = $(".game");
	   s.find('a').click(function() {
	     var target = this.hash;
	     s.not(target).removeClass("orange"); // .not(target) можно убрать
	     $(target).toggleClass("orange");
      });
});
  </script>
</head>

<body>
<div class="game" id="a1">Какой-то текст1
<a href="#a2">Ссылка2</a>
<a href="#a3">Ссылка3</a>
</div>
<div class="game" id="a2">Какой-то текст2
<a href="#a3">Ссылка3</a>
<a href="#a1">Ссылка1</a>
</div>
<div class="game" id="a3">Какой-то текст3
<a href="#a4">Ссылка4</a>
<a href="#a2">Ссылка2</a>
</div>
<div class="game" id="a4">Какой-то текст4
<a href="#a2">Ссылка2</a>
<a href="#a1">Ссылка1</a>
</div>

</body>

</html>
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
работа менеджером georgi Работа 1 29.03.2013 14:18
Работа в Москве, фуллтайм, от 70000 до 90000 Necros Работа 20 10.09.2012 21:27
Объект не поддерживает это свойство или метод load_081112_0953.js 1auto1 Общие вопросы Javascript 1 13.04.2011 22:09
Объект не поддерживает это свойство или метод load_081112_0953.js 1auto1 Internet Explorer 1 13.04.2011 21:59
В зависимости от referrer выводить рекламу adsene или зорьки wlad2 Общие вопросы Javascript 12 19.12.2010 01:02