Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.06.2015, 13:50
Аватар для petrovich
Интересующийся
Отправить личное сообщение для petrovich Посмотреть профиль Найти все сообщения от petrovich
 
Регистрация: 01.06.2015
Сообщений: 17

onclick не сохраняется в outerHtml
var f = function (){};         
var ff = function (){};  

var блок;
блок = document.createElement('div');
блок.id = 'id';
блок.dataset.y = '1';
блок.onclick = f;
document.body.appendChild(блок);
     alert(блок.outerHTML);  //нет onclick

var v=document.getElementById('блок2');
     v.onclick = ff;             //не заменяется содержимое атрибута onclick
     alert(v.outerHTML);   //есть onclick
}

<div id='блок2' onclick = 'f();' data-y='1''  ></div>


в блоке созданном скриптом нет атрибута onclik в outerHtml
а в блоке2 описанном в теле документа он есть
и не заменяется атрибут onclick описанный в теле документа на новый из скрипта

поясните логику пожалуйста

Последний раз редактировалось petrovich, 04.06.2015 в 17:24.
Ответить с цитированием
  #2 (permalink)  
Старый 04.06.2015, 16:06
Профессор
Отправить личное сообщение для Decode Посмотреть профиль Найти все сообщения от Decode
 
Регистрация: 31.01.2015
Сообщений: 576

petrovich, это юмор такой?
Ответить с цитированием
  #3 (permalink)  
Старый 04.06.2015, 17:10
Профессор
Отправить личное сообщение для Decode Посмотреть профиль Найти все сообщения от Decode
 
Регистрация: 31.01.2015
Сообщений: 576

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
    <div id="first-block" onclick="f();" data-y="1">1</div>

    <script>
        var f = function() {
            alert('bla-bla');
        };
    
        var secondBlock = document.createElement('div');
        secondBlock.id = 'second-block';
        secondBlock.innerHTML = '2';
        secondBlock.setAttribute('onclick', 'f()');
        secondBlock.dataset.y = '1';
        document.body.appendChild(secondBlock);
    </script>
</body>
</html>
Ответить с цитированием
  #4 (permalink)  
Старый 04.06.2015, 17:22
Аватар для petrovich
Интересующийся
Отправить личное сообщение для petrovich Посмотреть профиль Найти все сообщения от petrovich
 
Регистрация: 01.06.2015
Сообщений: 17

setAttribute - хорошо, но
надо разобраться с атрибутом элемента .onclik
чо не так то ?!

это наверное ржачно, да
туплю, жара...

Последний раз редактировалось petrovich, 04.06.2015 в 17:31.
Ответить с цитированием
  #5 (permalink)  
Старый 04.06.2015, 17:53
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

petrovich,
свойство не атрибут отображатся необязано, главное работает.
Ответить с цитированием
  #6 (permalink)  
Старый 04.06.2015, 18:45
Аватар для petrovich
Интересующийся
Отправить личное сообщение для petrovich Посмотреть профиль Найти все сообщения от petrovich
 
Регистрация: 01.06.2015
Сообщений: 17

рони, понимаю шо ты хочеш сказать шо onclick созданный как свойство не засчитывается в innerHTML
соответственно для едионообразия и логичности следует все остальные атрибуты добавлять только через setAttribute

обыскал сколько смог перед тем как спросить здесь - нигде в учебниках не нашел про это
Ответить с цитированием
  #7 (permalink)  
Старый 04.06.2015, 18:57
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

petrovich,
Цитата:
В отличие от свойств, атрибуты:
●Всегда являются строками.
●Их имя нечувствительно к регистру (ведь это HTML)
●Видны в innerHTML (за исключением старых IE)
https://learn.javascript.ru/attribut...tom-properties
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проверить onclick или не onclick милт Events/DOM/Window 3 23.09.2014 23:36
onclick по блоку в котором есть ссылки dr_gluk jQuery 2 17.11.2011 15:37
OnClick ячейки таблицы и ссылки в этой ячейке MasDen Javascript под браузер 2 30.06.2011 10:34
Создание события onclick? kerranswell Events/DOM/Window 31 09.05.2011 21:20
Событие onClick avtor01 Events/DOM/Window 3 03.09.2009 18:01