2012-06-25 62 views
1

我發現一個jQuery插件StackOverflow Page自動擴展/收縮文本框,因爲用戶粘貼/從文本輸入中刪除數據。它工作正常,直到我嘗試將大量文本粘貼到其中。然後它根本不擴展。但是,如果我繼續輸入字符,或者即使粘貼了少量文本,它也可以正常工作。任何人都可以告訴我如何調整它,以便即使在粘貼大量數據時也能同時進行擴展?如何調整jQuery文本框自動擴展插件

回答

1

你的問題是由於插件處理最大寬度的方式。

如果單個操作(例如粘貼)導致元素的寬度超過最大值,那麼插件不會將寬度擴展爲最大值,而會將其保留原樣。

// Calculate new width + whether to change 
var testerWidth = testSubject.width(), 
    newWidth = Math.min((testerWidth + o.comfortZone) >= minWidth 
     ? testerWidth + o.comfortZone : minWidth, o.maxWidth - 1); 

你會發現jsbin here更新:

要解決這個問題,我計算新的寬度時,修改了代碼,以最大寬度考慮在內。