2012-10-17 82 views
3

通過ajax(jQuery)將一些純文本粘貼爲html後,文本會覆蓋自身。html文本覆蓋本身

example

我不知道這是否是有幫助的發佈我的所有代碼,但也許有人之前面臨着同樣的問題,可以給我一個提示。

我正在使用Symfony2和jQuery(ajax請求操作)。

這裏是ajax請求和回調:

$('.tile').click(function(e){ 
    e.preventDefault(); 

    var thisTileImg = e.target 
    var x = thisTileImg.x; 
    var y = thisTileImg.y; 
    var tileID = thisTileImg.id; 

    // execute ajax-request to turnAction and give parameters for x and y of the tile 
    var request = $.ajax({ 
     url: pathTurnAction, 
     type: "POST", 
     data: {'x':x, 'y':y, 'tileID':tileID}, 
     dataType: "html" 
    }); 

    request.done(function(msg) { 
     var obj = jQuery.parseJSON(msg); 
     switch(obj.result){ 
      case -1: 
     showPopup(obj.text, obj.button); 
       break; 
      case 0: 
       thisTileImg.src = pathTileImg0; 
       break; 
      case 1: 
       thisTileImg.src = pathTileImg1; 
       break; 
     } 
     $('#attempts_left').html(obj.attempts); 
    }); 

    request.fail(function(jqXHR, textStatus) { 
     // TODO: do something with the error 
     // ... 
     alert("Request failed: " + textStatus); 
    }); 

}); 

function showPopup(text, button){ 
    $('#overlay_popup_text').html(text); 
    $('#overlay_popup_button').html(button); 
    $('#overlay_bg').show(); 
    $('#overlay_popup').show().center(); 
} 

和HTML/CSS

<div id="overlay_bg"></div> 
<div id="overlay_popup"> 
    <div id="overlay_popup_text"></div> 
    <div id="overlay_popup_button"></div> 
</div> 

#overlay_bg { 
width: 100%; 
height: 1900px; 
overflow: hidden; 
position: absolute; 
left: 0; 
top: 0; 
display: none; 
background: rgba(0, 0, 0, 0.75); 
-moz-transition: opacity 1.5s; 
-o-transition: opacity 1.5s; 
-webkit-transition: opacity 1.5s; 
z-index: 10000; 
} 

#overlay_popup { 
width: 200px; 
height: 200px; 
overflow: hidden; 
position: absolute; 
left: 0; 
top: 0; 
display: none; 
padding: 15px; 
background-color: #fff; 
-webkit-border-radius: 8px; 
-moz-border-radius: 8px; 
border-radius: 8px; 
z-index: 10001; 
} 

#overlay_popup_text { 
    height: 80px; 
} 
#overlay_popup_buttons { 
    height: 80px; 
} 
+2

發佈ajax回調函數,因爲這就是問題所在, – deltree

+5

似乎是CSS問題,請顯示您的代碼以獲取確切答案。 – Dev

+2

無法告訴亞沒有看你的代碼....張貼你的jQuery和HTML和作爲它的重寫你的CSS也。 – geekman

回答

3

的溶液在CSS相關。行高爲0.文本本身不斷寫入。