Помогите по JS. Упарился с document.onclick и target

R
На сайте с 17.11.2011
Offline
22
#51
Dinozavr:
там не надо ничего лопатить.
весь код в левом верхнем окне и прекрасно изменяется в опере.
нажимаем на любой из квадратов и потом "do magic", при этом последний кликнутый квадрат становится красным.
всё работает в опере

этот тоже смотрел :)

Дело в том, что onclick есть только у документа.

Вот представь на том примере, что у дивок нету ни айди, ни онклика, но надо получить их идентификатор, чтобы к примеру, в каком-то поле появился их innerHTML и пожно было писать в том поле, и одновременно менялся innerHTML у того дива, по которому кликнули.

домашняя страница - google.com.ua
ДП
На сайте с 23.11.2009
Offline
203
#52

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title></title>
</head>
<body>
<div style="width:100px;height:100px;border:1px solid black"></div>
<div style="width:100px;height:100px;border:1px solid black"></div>
<input type="text" id="inputer" onkeypress="proc(this);"/>
<script type="text/javascript">
var div = null;
var handler = function(e){
if(e.target.id != "inputer")
{
div = e.target;
}
}
function proc(el){
if(div != null)
{
div.innerHTML = el.value;
}
}
document.onclick = handler;
</script>
</body>
</html>

Развлекайтесь. Сначала клик по диву любому, затем вводите текст в поле ввода.

D
На сайте с 14.01.2007
Offline
153
#53

http://jsfiddle.net/Wyjss/7/

если id нет, то придётся хранить объекты

R
На сайте с 17.11.2011
Offline
22
#54

ладно, всем спасибо, даже флудерам. :)

ДП
На сайте с 23.11.2009
Offline
203
#55

Great-Antique,Dinozavr, мы походу его уломали-таки :-D заюзать e.target

D
На сайте с 14.01.2007
Offline
153
#56

Дикий пионер, я бы так не был бы уверен:) судя по ответу, каждый остался при своём мнении

rommer, я прав?:)

Great-Antique
На сайте с 21.08.2010
Offline
16
#57

Dinozavr, сомневаюсь :)

Мне кажется 2 проблемы у данного топика:

- плохо поставленная задача

- непонятно почему такое агрессивное отношение ТС к людям, которые пытались помочь

В итоге, мне кажется, проблема не решена для ТС в таком виде как он хотел.

Пишу небольшие PHP-скрипты бесплатно. Главное, чтобы интересно было. Блог о PHP-разработке (http://den.girnyk.com) и не только.
wwwwww
На сайте с 29.04.2011
Offline
195
#58
rommer:
этот тоже смотрел
Дело в том, что onclick есть только у документа.
Вот представь на том примере, что у дивок нету ни айди, ни онклика, но надо получить их идентификатор, чтобы к примеру, в каком-то поле появился их innerHTML и пожно было писать в том поле, и одновременно менялся innerHTML у того дива, по которому кликнули.

Когда научитесь ставить правильно цели и задачи?

Вам неведомо понятие логики и последовательности действий.

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

rommer:
что у дивок нету ни айди, ни онклика, но надо получить их идентификатор

Разжижение мозгов не лечится.

нет id = нельзя получить id, (пока его не присвоить).

Видишь? Свободная подпись.
Dreammaker
На сайте с 20.04.2006
Offline
569
#59

Great-Antique, у ТС, как мне кажется, проблема в том, что из-за слабого опыта и, возможно, знаний он решает задачи только так как видит и при этом категорически не хочет прислушиваться к советам. У него что не тема, так пример такого вот упрямства.

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

Great-Antique:
- плохо поставленная задача

Вы правы, я даже сказал бы что ТС не ставит задачу - он ищет решение.

Я уже публиковал шутку с phpfaq.ru. которая прямо насчёт ТСа, но можно ещё раз. Он в каждой теме на одни и те же грабли наступает.

Новичок: Подскажите пожалуста самый крепкий сорт дерева! Весь инет перерыл, поиском пользовался!
Старожил: Объясни, зачем тебе понадобилось дерево? Сейчас оно в строительстве практически не используется.
Новичок: Я небоскрёб собираюсь строить. Хочу узнать, из какого дерева делать перекрытия между этажами!
Старожил: Какое дерево? Ты вообще соображаешь, что говоришь?
Новичок: Чем мне нравиться этот форум - из двух ответов ниодного конкретного. Одни вопросы неподелу!
Старожил: Не нравится - тебя здесь никто не держит. Но если ты не соображаешь, что из дерева небоскрёбы не строят, то лучше бы тебе сначала школу закончить.
Новичок: Не знаите - лучше молчите! У меня дедушка в деревянном доме живёт! У НЕГО НИЧЕГО НЕ ЛОМАЕТСЯ!!!
Но у него дом из сосны, а я понимаю, что для небоскрёба нужно дерево прочнее! Поэтому и спрашиваю!!! А от вас нормального ответа недождёшся!!!
Прохожий: Самое крепкое дерево - дуб. Вот тебе технология вымачивания дуба в солёной воде, она придаёт дубу особую прочность:
Новичок: Спасибо, братан! То что нужно!!!

p.s. Но топикстартер из этой темы: /ru/forum/681830 мне больше понравился, по крайней мере, жжет "неподецки" :)

R
На сайте с 17.11.2011
Offline
22
#60
wwwwww:
Когда научитесь ставить правильно цели и задачи?
Вам неведомо понятие логики и последовательности действий.
Продолжайте упарываться кодом, вместо разработки стройного и понятного концепта взаимодействия и очереди событий.

задача была поставлена максимально понятно.

Еще раз цитирую.:

Нужно каким-то образом идентифицировать кликнутый объект, чтобы к нему можно было обратиться уже без клика по документу

несколько страниц деятели советовали вот это:

my_element=e.target;

my_element.style.color='red';

хотя оно не имеет ничего общего с "чтобы к нему можно было обратиться уже без клика по документу"


Разжижение мозгов не лечится.
нет id = нельзя получить id, (пока его не присвоить).

не id единым, поэтому разжижение лечите у себя.

Больше на этот форум не хожу, потому что вы тупые, не понимаете поставленных вопросов и занимаетесь тупым троллингом.

Занимайтесь этим и далее. Всего хорошего.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий