繁体   English   中英

appendChild()和createElement()Javascript问题

[英]appendChild() and createElement() Javascript question

当我在代码中使用appendChild()和createElement()时,未应用已定义CSS ID的后续样式。 有人可以告诉我为什么吗? 这是我的代码:

function searchDone(results) {
    var result = null;
    var parent = document.getElementById('postWrap');
    var child = null;
    parent.innerHTML = '';
    var insertHTML =" ";

    //Paginating Results Links
    resultNum = results.SearchResponse.Web.Total;
    resultNum = resultNum/10;
    child = document.createElement('div');
    child.id = "paging";
    if(results.SearchResponse.Web.Offset != 0){
        insertHTML ='<span><a class="jsonp b" href="#" rev="'+(results.SearchResponse.Web.Offset-10)+'">&lt;</a></span>';
    }
    if(results.SearchResponse.Web.Offset == 0){
        insertHTML += '<span>1</span>';
    }else{
        insertHTML +='<span><a class="jsonp" href="#" rev="0">1</a></span>';
    }
    for(var i = 1; i <= resultNum; i++){
        if((results.SearchResponse.Web.Offset/10) == i){
            insertHTML += '<span>'+(i+1)+'</span>';
        }else{
            insertHTML += '<span><a class="jsonp b" href="#" rev="'+i*10+'">'+(i+1)+'</a></span>';
        }
    }
    if(results.SearchResponse.Web.Total - results.SearchResponse.Web.Offset > 10){
        insertHTML += '<span><a class="jsonp b" href="#" rev="'+(results.SearchResponse.Web.Offset+10)+'">&gt;</a></span>';
    }
    child.innerHTML = insertHTML;
    parent.appendChild(child);

然后,我还有其他一些代码通过Bing的API处理我的搜索查询(仅因为Google现在收费...)

接下来,我使用相同的方法插入另一个div:

//Insert Paginating results again
    child = null;
    child = document.createElement('div');
    child.innerHTML = insertHTML;
    child.id = "searchResultsPages";
    parent.appendChild(child);

现在,我想对这些数字应用某些样式。 但是,当我将样式应用于searchResultsPage时,例如

#searchResultsPages{
 float: right;
}

我不明白这种风格。 奇怪的是,如果我仅插入这两个元素之一,一切都会按计划进行,并且样式会很好显示。 问题是我希望页面显示在搜索的顶部和底部。

任何想法为什么会这样? 我认为这可能与元素两次使用有关,但是我不知道如果对象不同,为什么这会产生任何影响。

谢谢。

child.id = "searchResultsPages";

#searchResultsPage{

看到有什么问题吗? :)

就像一个s

ID在页面内应该是唯一的,因此,如果您有两个id =“ searchResultsPage”的元素,则该行为可能会变得有些棘手,并且HTML无效。 如果有多个元素,请使用class =“ searchResultsPage”。

其他评论者指出的缺失“ s”的问题也很重要,尽管希望这只是问题中的一个错字。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM