2014-07-24 118 views
0

好吧,所以我剛開始工作正在進行的項目。我注意到一個錯誤,用戶名會出現在另一個元素內部,直到光標懸停在它的上面。寬度自動不更新與淘汰賽文本綁定

經過多次調查,我發現這是由於這個項目使用Knockout.js。對於span元素中的佔位符,他們有一個不間斷的空間。所以當頁面呈現時,它有時會忘記用新更改的文本更新寬度自動。

<span data-bind="text: db.who">&nbsp;</span> 
<!--and updates to--> 
<span data-bind="text: db.who">Username</span> 
<!--however, ^this^ updated version does not allow for the width: auto to work.--> 

我公開涉及HTML,CSS,JavaScript的答案,和/或JQuery的

+0

您可以添加周圍的標記或jsfiddle嗎?它是如何「有時」 - 即有時它按預期工作? –

+0

它「有時」起作用是因爲瀏覽器呈現頁面的方式。它通常按預期工作,如果與服務器的連接是快速的。 – MDooley47

回答

0

Fot的這一點,你需要ATTR這樣

<span data-bind="text: db.who,attr:{width:SetWidth}">Username</span> 

self.SetWidth = function(){ 
    return 'auto' 
} 

結合使用這個動態應用所以當頁面被渲染時將會調用SetWidth函數來返回一些東西並將其應用到元素上

+0

它沒有工作。也許我的診斷是錯誤的。我正在MineOS UI頁面上工作。您可以查看我的分支: https://github.com/MDooley47/mineos (它位於html> index_en.html中) – MDooley47