コードで 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)+'"><</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)+'">></a></span>';
}
child.innerHTML = insertHTML;
parent.appendChild(child);
次に、APIを介してBingへの検索クエリを処理する他のコードがあります(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;
}
継承されているスタイルがわかりません。興味深いのは、これら 2 つの要素の 1 つだけを挿入すると、すべてが計画どおりに進み、スタイルがうまく表示されることです。問題は、検索の上部と下部にページを表示したいということです。
なぜこれが起こっているのですか?要素が2回使用されていることに関係があるのではないかと思いますが、オブジェクトが異なる場合にこれが影響する理由はわかりません。
ありがとう。