Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 01.08.2012, 22:31
czp czp вне форума
Профессор
Отправить личное сообщение для czp Посмотреть профиль Найти все сообщения от czp
 
Регистрация: 15.10.2011
Сообщений: 213

this - можно обойти?
есть такой код
function test(elem) {
  alert(elem.getAttribute('href'));
}

<a href="tut url" onclick="test(this);">test</a>

можно как то напистаь так, что бы в html мне не нужно было передавать аргумент
"test(this);"


а внутри кода уже использовал this, и ссылалось оно на обьект штмл на тег <a>
такое возможно?

как то так что бы было :
function test( {
  alert(this.getAttribute('href'));
}

или
function test( {
  elem = this;
  alert(elem.getAttribute('href'));
}
Ответить с цитированием
  #2 (permalink)  
Старый 01.08.2012, 22:38
Профессор
Отправить личное сообщение для oneguy Посмотреть профиль Найти все сообщения от oneguy
 
Регистрация: 31.05.2012
Сообщений: 396

Можно сделать запись прямо в свойство onclick:
переменнаяСодержащаяЭлементА.onclick=test;
Ответить с цитированием
  #3 (permalink)  
Старый 01.08.2012, 22:58
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 17.12.2011
Сообщений: 4,415

<a href="tut url" onclick="test.call(this);">test</a>

либо
document.getElementById('elem').onclick = function (){

}
Ответить с цитированием
  #4 (permalink)  
Старый 01.08.2012, 23:03
czp czp вне форума
Профессор
Отправить личное сообщение для czp Посмотреть профиль Найти все сообщения от czp
 
Регистрация: 15.10.2011
Сообщений: 213

понял спасибо за ответы
Ответить с цитированием
  #5 (permalink)  
Старый 01.08.2012, 23:10
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,590

а зачем тебе?
__________________
29375, 35
Ответить с цитированием
  #6 (permalink)  
Старый 02.08.2012, 08:13
Профессор
Отправить личное сообщение для Dmitriyff Посмотреть профиль Найти все сообщения от Dmitriyff
 
Регистрация: 22.07.2012
Сообщений: 164

Пять способов вызвать функцию

в html
Сообщение от cyber
<a href="tut url" onclick="test.call(this);">test</a>
в js
Сообщение от cyber
document.getElementById('elem').onclick = function (){
 
}

про call test.call(this);
про apply test.apply(this);
Ответить с цитированием
  #7 (permalink)  
Старый 02.08.2012, 11:46
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 17.12.2011
Сообщений: 4,415

Сообщение от Dmitriyff Посмотреть сообщение
Пять способов вызвать функцию

в html


в js



про call test.call(this);
про apply test.apply(this);
достаточно call, так как я не думаю что кто то будет передавать массив параметров через хтмл
Ответить с цитированием
  #8 (permalink)  
Старый 06.08.2012, 03:37
Профессор
Отправить личное сообщение для Dmitriyff Посмотреть профиль Найти все сообщения от Dmitriyff
 
Регистрация: 22.07.2012
Сообщений: 164

Сообщение от cyber
достаточно call
да это так было, для расширения кругозора вопрос задавшего =-)
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
If можно поточнее? FeaR51 Общие вопросы Javascript 20 09.05.2011 00:28
Можно ли удалить клонированный объект Евгений_86 jQuery 6 13.04.2011 12:54
Можно ли как-то сократить скрипт случайной цитаты (см. внутри)? Hyuga_Nia Общие вопросы Javascript 4 20.01.2011 22:00
Как можно сократить (и можно ли) этот скрипт (см. внутри)? Hyuga_Nia Общие вопросы Javascript 28 20.01.2011 21:48
Можно ли вернуть false "через вторую функцию" ? nicholas Events/DOM/Window 1 05.10.2010 02:09