Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.04.2011, 18:08
Аватар для poorking
prodigy
Отправить личное сообщение для poorking Посмотреть профиль Найти все сообщения от poorking
 
Регистрация: 01.11.2010
Сообщений: 503

event.target + chrome и safari (select > option)
Здравствуйте, когда назначаю обработчик на выпадающий select, то FF4, opera11 и ie9 правильно определяют target, но chrome и safari указывают на сам select.
Если сделать select multiple, то все становится нормально, подскажите, пожалуйста, что здесь не правильно
Тестовый пример
<select id = "test">
	<option value = "1">номер один</option>
	<option value = "2">номер два</option>
	<option value = "3">номер три</option>
</select>

<select id = "test1" multiple style = "padding-bottom: 50px;">
	<option value = "1">номер один</option>
	<option value = "2">номер два</option>
	<option value = "3">номер три</option>
</select>

<script>
	function showNumber(val){
		alert(val);
	}
	
	document.getElementById("test").onclick = test;
	document.getElementById("test1").onclick = test;
	
	function test(e){
		var trg = function(event){
			return event.target || event.srcElement;
		}(e || window.event)
		
		if(trg === this){
			return false;
		}
		
		showNumber(trg.value);
	}
</script>
__________________
readOnly

Последний раз редактировалось poorking, 06.04.2011 в 18:11.
Ответить с цитированием
  #2 (permalink)  
Старый 06.04.2011, 18:27
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от poorking
что здесь не правильно
вообще что за бредовая идея так извращаться над элементами списка?

<script type="text/javascript">
window.onload = function() {
    document.getElementById('select').onchange = function() {
        alert(this.options[this.selectedIndex].index);
    };
};
</script>

<select id="select">
    <option value="1">номер 0</option>
    <option value="2">номер 1</option>
    <option value="3">номер 2</option>
</select>

Последний раз редактировалось monolithed, 06.04.2011 в 18:31.
Ответить с цитированием
  #3 (permalink)  
Старый 06.04.2011, 18:34
Аватар для poorking
prodigy
Отправить личное сообщение для poorking Посмотреть профиль Найти все сообщения от poorking
 
Регистрация: 01.11.2010
Сообщений: 503

Сообщение от monolithed
вообще что за бредовая идея?
Согласен, спасибо, без понятия

Плюс поставить не дают
"Страница по адресу javascript.ru says:
Вы должны оставить отзыв кому-то еще прежде чем сможете снова добавить его monolithed."

Кстати в вашем примере можно уж наверно написать просто
alert(this.selectedIndex);
вместо
alert(this.options[this.selectedIndex].index);
__________________
readOnly

Последний раз редактировалось poorking, 06.04.2011 в 18:53.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
select -> плавущий размер option FOJIK Элементы интерфейса 0 26.03.2011 18:42
Динамические option в select lurii Элементы интерфейса 10 14.01.2011 11:23
Некорректное отображение форума в браузерах Chrome и Safari Magneto Сайт Javascript.ru 3 25.11.2010 11:06
Chrome, Safari и размер view-порта с абсолютно позиционируемыми элементами uonax Opera, Safari и др. 10 29.06.2010 22:57
Вставка текста в textarea после выбора select option modelisto Общие вопросы Javascript 2 14.10.2009 19:27