Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   метод children (https://javascript.ru/forum/events/56911-metod-children.html)

sash003 09.07.2015 16:05

метод children
 
Привет всем! я вернулся! :) По ходу я тут долго буду главным генератором тем, у меня так всё в голове перемешалось, я уже не вижу что и где ;)

Хочу сделать метод, который возвращал хотя бы все дочерние, для начала, год на фильтрацию выделю потом, так и быть. Чёрт знает что возвращает, вроде должен метод html для каждого дочернего сработать, а в итоге всё что было замещается

// метод children - возвращает массив со всеми указанными дочерними элементами 
_init_.prototype.children = function(){
  
    if (document.documentElement.children){
        var self = this.s[0];
        for(var i = 0; i < self.children.length; i++){
            this.s[i] = self.children[i];
        }
        return this;
    }
 // это потом, в книжке нашел 
    else {
 _init_.prototype.__defineGetter__("children", function() {
 var kids = [];
 for(var c = this.firstChild; c != null; c = c.nextSibling)
 if (c.nodeType === 1) kids.push(c);
 });
 return this;
}
 
}


как нужно, профи? :)

sash003 09.07.2015 19:13

Обана, я уже аспирант, круто, товарищи :) Расти, карма.. Гифки тут конечно как на госзаказ подобранные :)

рони 09.07.2015 20:05

sash003,
:( :cray:
_init_.prototype.children = function() {
    var kids = [];
    for (var i = 0; i < this.s.length; i++) {
        for (var c = this.s[i].firstChild; c != null; c = c.nextSibling)
            if (c.nodeType === 1) kids.push(c);
    };
    return _A_(kids);
}

sash003 09.07.2015 21:24

Да ладно, не плачь. научуся может быть :)
Спасибо, ты настоящий друг

sash003 09.07.2015 21:28

Я в основном на киберфоруме в роли про тусуюся :) тут на вашем фоне даже боюся пробовать
Верят, главное :no:
http://www.cyberforum.ru/javascript/thread1495370.html

рони 09.07.2015 21:48

sash003,
:-?
Цитата:

чтобы при выборе одного из значений первой группы радиокнопок, во второй группе выбиралось ровно тоже самое.
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
</head>

<body>
<input type="radio" name="property_0" id="1"/>
<input type="radio" name="property_0" id="2"/>
<input type="radio" name="property_0" id="3"/>
<br />
<input type="radio" name="property_1" class="i1"/>
<input type="radio" name="property_1" class="i2"/>
<input type="radio" name="property_1" class="">
<script>
var radio = document.getElementsByName('property_0');
var radio2 = document.getElementsByName('property_1');
for(var i = 0; i<radio.length; i++){
    addEvent(radio[i], 'click', handler(i));
}

function handler(a) {
    return function() {
        radio2[a].checked = true
    }
}

// функция кроссбраузерной установки обработчиков событий
function addEvent(elem, type, handler, param){
    param = param || false;
  if(elem.addEventListener){
    elem.addEventListener(type, handler, param);
  } else {
    elem.attachEvent('on'+type, handler);
  }
  return false;
}

// функция кроссбраузерного удаления обработчиков событий
function removeEvent(elem, type, handler, param){
    param = param || false;
  if(elem.removeEventListener){
    elem.removeEventListener(type, handler, param);
  } else {
    elem.detachEvent('on'+type, handler);
  }
  return false;
}
</script>
</body>

</html>

sash003 09.07.2015 22:07

ну да типо, зачем аж сюды занёс? :yes:

рони 09.07.2015 22:13

sash003,
handler покоре сделал, может пригодится кому :)

sash003 09.07.2015 22:31

А я и не заметил :) ну у меня там хендлер помассивней был, посолиднее. Как это, слышал, людям платили за строки кода?
Больше кода - больше капусты :)


Часовой пояс GMT +3, время: 14:16.