2012-02-28 4 views
0

В настоящее время у меня есть событие click, когда выбранный добавляет окно поиска в .header, это делается с помощью закрытия Google. Моя проблема теперь, если я нажму кнопку закрытия, я хочу удалить этот добавленный элемент. Я знаю, что использование jQuery требует только .remove(), но Im unsure, как добиться этого в закрытии или vanilla js. Может ли кто-нибудь посоветовать, как я могу это сделать?удаление добавленного элемента с помощью javascript/закрытия?

Текущий код:

if(goog.dom.getElementsByClass('pe')){ 
    var searchCtn = goog.dom.getElementsByClass('search');  
    var headerWrapper = goog.dom.getElementByClass('header');  
    goog.dom.append(headerWrapper,searchCtn); 
} 

var closeButton = goog.dom.getElement('close'); 
    goog.events.listen(closeButton, goog.events.EventType.CLICK, function() { 
    console.log('Remove appended'); 
}, false, this); 

ответ

2

. функция такова:

goog.dom.removeNode = function(node) { 
    return node && node.parentNode ? node.parentNode.removeChild(node) : null; 
}; 

Так код, как показано ниже (предположим, что окно поиска является родителем кнопки закрытия):

goog.events.listen(closeButton, goog.events.EventType.CLICK, function() { 
    goog.dom.removeNode(this.parentNode); 
}, false, this); 
+0

+1 за это с GOOG – cgp

+0

спасибо за ответ, this.parentNode цели родителя из закрыть кнопку, я прав? как настроить целевой элемент, если он не является родителем кнопки close? – styler

+0

@styler Итак, просто 'goog.dom.removeNode (searchCtn);' – xdazz

-1

Просто используйте element.removeChild(y)

$(function() { 
    $('span').click(function() {  
    this.parentNode.removeChild(this); 
    }); 
}); 

Это JQuery, но очень легко перевести к простой старый JavaScript, или любой основы вы в