在if语句中使用if语句的建议

在if语句中使用if语句的建议

问题描述:

我想测试一个类是否存在,如果它确实使用javascript/google closure在语句中执行脚本。问题是我目前的代码返回undefined,所以我想知道是否有人可以给我一些建议?在if语句中使用if语句的建议

if (goog.dom.classes.has('html', 'pe')) { 

    var searchCtn = goog.dom.getElementsByClass('search'); 
    var headerWrapper = goog.dom.getElementByClass('header'); 
    goog.dom.append(headerWrapper,searchCtn); 
} 
+1

究竟是返回undefined在哪里? – 2012-02-28 13:01:05

+0

基本上,如果我在控制台中运行这个时,我知道html有类.pe我的.search类未附加到.header。在没有if的情况下在控制台中运行脚本会追加.search? – styler 2012-02-28 13:07:22

+0

看起来你错过了'var'headerWrapper = goog.dom.getElementByClass('header');'。这会导致防止追加函数运行的异常。 – 2012-02-28 13:21:14

'html'不是有效的元素对象。尝试传入document.documentElement或使用google通过classname获取元素。

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

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