30.08.2015, 08:54
|
Аспирант
|
|
Регистрация: 30.08.2015
Сообщений: 29
|
|
что означает $(this)?
Какая то таинственная конструкция с тайным смыслом. По идее
<html>
<head>
</head>
<body>
<script>
$=function(arg){alert(arg)}
$(this)
</script>
</body>
</html>
это всегда window. Получается, что jq берет в качестве текущего контекста, тот контекст, который и так доступен дефолтно. Тогда зачем это?
|
|
30.08.2015, 09:46
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,124
|
|
Сообщение от fuckYankee
|
это всегда window.
|
ой
Сообщение от fuckYankee
|
Получается, что jq берет в качестве текущего контекста, тот контекст, который и так доступен дефолтно.
|
ещё ой
this в jQuery чаще всего элемент/ы - конструкцией $(this) его превращают в обьект с нужными свойствами.
Вам действительно интересно? или вам нравится создавать темы?
|
|
30.08.2015, 09:52
|
Аспирант
|
|
Регистрация: 30.08.2015
Сообщений: 29
|
|
Да, мне интересно, *действительно*
Сообщение от рони
|
конструкцией $(this)
|
это просто ф-ция.
Сообщение от рони
|
его превращают в обьект с нужными свойствами.
|
как можно превратить window в *обьект с нужными свойствами*? Для этого надо с бубном возле него побегать?
|
|
30.08.2015, 10:21
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,124
|
|
Сообщение от fuckYankee
|
как можно превратить window
|
так это в вашей вселенной
Сообщение от fuckYankee
|
window
|
а моей
Сообщение от рони
|
элемент/ы
|
вот вам и требутся
Сообщение от fuckYankee
|
с бубном возле него побегать
|
|
|
30.08.2015, 10:42
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Сообщение от fuckYankee
|
как можно превратить window в *обьект с нужными свойствами*? Для этого надо с бубном возле него побегать?
|
alert($(window).width())
|
|
30.08.2015, 10:46
|
Аспирант
|
|
Регистрация: 30.08.2015
Сообщений: 29
|
|
рони,
покажите пожалуйста в коде, как в вашей вселенной это происходит. Единственно возможный случай, когда так будет -- это если вы пишите код прямо в html
<script>
f=function(env){alert(env)}
</script>
<p onclick="f(this)">foo</p>
Вы можете показать другой случай?
|
|
30.08.2015, 10:54
|
Аспирант
|
|
Регистрация: 30.08.2015
Сообщений: 29
|
|
laimas,
Да я понял смысл, спасибо. Ну надо же, какая глупость, однако
|
|
30.08.2015, 10:56
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Сообщение от fuckYankee
|
Вы ничего там не превратили, что взяли то и отдали, внутри функции сформировался jq-объект
|
Ну если вас терзает вопрос о свойствах, а не то, что в JQ можно и $(window), то зачем же что-то "превращать", они и так доступны?
Сообщение от fuckYankee
|
Единственно возможный случай, когда так будет...
|
Не обязательно явно, можно и:
<p id="as">ttt</p>
<script>
var e = document.getElementById('as');
e.onclick = function() {
alert(this.id)
}
</script>
|
|
30.08.2015, 10:57
|
Аспирант
|
|
Регистрация: 30.08.2015
Сообщений: 29
|
|
laimas,
Глупость в том, я имею в виду, что каждый раз формируется новый объект, засирая тем самым память и сажая производительность, тогда как он мог бы также быть дефолтным внутри либы. Хотя он скорей всего кэшируется, но все равно бред, сложность на пустом месте, и неочевидный код в итоге. Ребусы, мля.
Последний раз редактировалось fuckYankee, 30.08.2015 в 11:00.
|
|
30.08.2015, 10:58
|
Аспирант
|
|
Регистрация: 30.08.2015
Сообщений: 29
|
|
Сообщение от laimas
|
можно и:
|
Нет, это несколько другое. Это примерно myFunc.call(theObject), обычное поведение. Речь шла именно о явной передаче.
|
|
|
|