我已經構建了一個隨機順序從數據庫加載歌曲的音樂播放器。我想在信息面板中顯示曲目信息。因爲我不知道藝術家/曲目名稱的長度,所以如果信息太大,我希望信息可以滾動以顯示字幕效果。我被告知瀏覽器的marquee標籤的實現是壞的,所以我有一個jquery插件爲我做了一個很好的平滑的方式(我假設auther知道爲什麼他們不好,並已經排序)。 目前爲止這麼好。使div的容器溢出來與marquee.js一起工作
問題是,選取框無法解決它是否需要,因此我想在調用它之前運行檢查以查看是否有必要(即文本的長度是否保證)。
現在我敢肯定,這裏的問題是一個簡單的CSS之一,但我不能爲我的生命數字出來 - 你知道,當你已經在太長時間盯着的東西...
我我試圖做的是調用內部的div如果內部div的內容比外部div大,但無論我做什麼我似乎無法讓我的內部div水平伸展超出我的外部div除非我設置一個固定的寬度(這不是很有用,因爲我不知道內容的寬度)。
這裏是我的簡單的HTML(包裝中包含一些其他的東西飄來兩側):
<div id="mplayerinfo_wrapper"><div id="mplayerinfo_trackinfo"><div id="ti_inner"></div></div></div>
這裏是我的簡單的CSS:
#mplayerinfo_wrapper{
width:545px;
height:30px;
margin-top:32px;
display:inline-block;
float:left;
}
#mplayerinfo_trackinfo{
height:30px;
width:238px;
display:inline-block;
overflow:hidden;
float:left;
}
#ti_inner{
float:left;
height:30px;
width:auto;
}
我則希望使用jQuery獲得兩個元素的寬度,比較它們,如果內部比外部大,則像這樣啓動選取框:
var owidth=$('#mplayerinfo_trackinfo').width();
var iwidth=$('#ti_inner').width();
if(iwidth>owidth){$('#ti_inner').marquee();};
如果這不能通過CSS來解決,是否有用jQuery/JavaScript獲取內容寬度。有任何想法嗎?在此先感謝
即使內部div中的內容大於外部div,內部div也只能獲得與其容器一樣大的內容。檢查內部div的文本長度並決定是否應該使用基於此的選取框可能更容易。 – 2012-02-17 21:48:31
這可能也有幫助 - http://stackoverflow.com/questions/143815/how-to-determine-using-javascript-if-html-element-has-overflowing-content – 2012-02-17 21:49:49