Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #31 (permalink)  
Старый 15.10.2014, 17:56
Аспирант
Отправить личное сообщение для Boolean_Type Посмотреть профиль Найти все сообщения от Boolean_Type
 
Регистрация: 02.02.2014
Сообщений: 48

Сообщение от danik.js Посмотреть сообщение
Покажи, где тут разничия в поведении?
1)  <a onclick =                "       alert(this)      ">
2)    a.onclick = function() {       alert(this)      };
Тут их нет, ты же в строке this указал) А если чё-то типа <a onclick = "some_fucking_func()">, и в этой some_fucking_func прописано alert(this), этот this будет Window.

Ладно, danik.js, ну отстань уже, я разобрался
Ответить с цитированием
  #32 (permalink)  
Старый 15.10.2014, 17:56
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Корявые шрифты поломали вырванивание. Вот:
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #33 (permalink)  
Старый 15.10.2014, 17:57
Аспирант
Отправить личное сообщение для Boolean_Type Посмотреть профиль Найти все сообщения от Boolean_Type
 
Регистрация: 02.02.2014
Сообщений: 48

Сообщение от danik.js Посмотреть сообщение
Корявые шрифты поломали вырванивание. Вот:
Нафиг стока пробелов, я и так понял, что там написано)))
Ответить с цитированием
  #34 (permalink)  
Старый 15.10.2014, 17:58
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от Boolean_Type
А если чё-то типа <a onclick = "some_fucking_func()">, и в этой some_fucking_func прописано alert(this), этот this будет Window.
То есть если сделать так то будет какая-то разница? :


Мы ведь это уже проходили, только вместо some_fucking_func() было f(). У тя провалы в памяти?

Так будет разница или нет?
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #35 (permalink)  
Старый 15.10.2014, 18:01
Аспирант
Отправить личное сообщение для Boolean_Type Посмотреть профиль Найти все сообщения от Boolean_Type
 
Регистрация: 02.02.2014
Сообщений: 48

Сообщение от danik.js Посмотреть сообщение
У тя провалы в памяти?

Так будет разница или нет?
А у тебя? Я же ответил выше.
Контекст this для событий
Ответить с цитированием
  #36 (permalink)  
Старый 15.10.2014, 18:13
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от Boolean_Type
Я же ответил выше.
Ты не ответил. Дословно:
Сообщение от Boolean_Type
А если чё-то типа <a onclick = "some_fucking_func()">, и в этой some_fucking_func прописано alert(this), этот this будет Window.
То есть в варианте с атрибутом будет Window, а в варианте со свойством - что-то другое?
Можешь не гадать, я уже пример накидал: Контекст this для событий
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #37 (permalink)  
Старый 15.10.2014, 18:32
Аспирант
Отправить личное сообщение для Boolean_Type Посмотреть профиль Найти все сообщения от Boolean_Type
 
Регистрация: 02.02.2014
Сообщений: 48

Сообщение от danik.js Посмотреть сообщение
я уже пример накидал: Контекст this для событий
Нахер такие переподвыподверты? Зачем из-под одной ф-ции было вызывать f(), этот пример нихрена не показателен, там Window везде, что ты им сказать-то пытался?
<button onclick='f(event)'>this в атрибуте (кликни)</button>
<button id="button2">this в свойстве (кликни)</button>
<script>
    function f(event) {
        alert(this);
    }
    button2.onclick = function(event) {
        alert(this); //нахер тут было f вызывать? Я уже понял, что там Window) И ты ещё говоришь, что я хитрая жопа?:D 
    };
</script>
Ответить с цитированием
  #38 (permalink)  
Старый 15.10.2014, 18:44
Кандидат Javascript-наук
Посмотреть профиль Найти все сообщения от terminator-101
 
Регистрация: 14.10.2014
Сообщений: 117

Boolean_Type,
А кто сказал, что там правильно написано?
f=function(){alert(this.foo)}
el1.onclick=f
el2.onhuy=f

Здесь f -- обработчик какого события, какого эдемента?
Ответить с цитированием
  #39 (permalink)  
Старый 15.10.2014, 19:15
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от Boolean_Type
нахер тут было f вызывать?
А нахер в onclick="f()" вызывать f() ?
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #40 (permalink)  
Старый 15.10.2014, 21:12
Профессор
Отправить личное сообщение для kostyanet Посмотреть профиль Найти все сообщения от kostyanet
 
Регистрация: 23.10.2010
Сообщений: 2,718

danik.js, нахер вообще что-то вписываете? какие-то ивенты-шмывенты.

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

http://learn.javascript.ru/play/eG9lQ
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите в замыкании универсальной функции для обработчиков событий addEventListener iis_ Events/DOM/Window 6 30.01.2014 01:09
Посоветуйте как улучшить код для работы с history api [ jquery + js + history api ] Geo Ваши сайты и скрипты 0 12.01.2014 00:41
Программный вызов событий для конкретных элементов iNfantry jQuery 9 31.01.2012 15:21
HTA-приложение для радио Pianorama Magneto Ваши сайты и скрипты 42 22.01.2012 08:34
trigger() работает только для событий jQuery? slavaiv jQuery 4 20.11.2011 14:41