не работает this
таварищи! расталкуйте мне чайнику что не так пжста! какойта пробел в образовании образовался! вродебы по ссылке this должен быть элемент кнопки - но увы и атнють!
<!DOCTYPE HTML><html><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<title></title><style type="text/css" id="">
.неакт
{
display: flex;
height: 40px;
width: 80px;
border: 3px solid gray;
box-shadow: 2px 2px 8px black;
}
.акт
{
display: flex;
height: 40px;
width: 80px;
border: 3px solid red;
box-shadow: 2px 2px 8px black;
}
</style><script type="text/javascript"> "use strict";
var обьект =
{
метод : function()
{
this.className = 'неакт'; //нихт арбайтен!
alert(this.id); //нихт арбайтен!
},
};
</script> </head><body>
<span id='кнопка' class='акт' onclick='обьект.метод()'></span>
</body></html>
|
Неужто склероз?
onclick='обьект.метод()' ~ onclick=function(){ обьект.метод() } |
Цитата:
это же гдето должно быть описано в учебнике - где я невниматильна читал ? |
но возникает доп вопроз -
если надо навесить одинаковый обработчик для множества кнопок - то шоли придется для каждой кнопки повторять одинаковый код функции??? |
он у тебя работает, только байндинг неправильный.
Передавай окружение явно
<html>
<head>
</head>
<body>
<div id="foo" onclick="o.f(this)">div</div>
<script>
o={
f: function(env){alert(env.id)}
}
</script>
</body>
</html>
либо вешай на событие непосредственно ф-цию. |
Цитата:
|
| Часовой пояс GMT +3, время: 14:46. |