[英]Is there a limit on the size of the string passed to jQuery.append()
我在Angular中編寫了一個基本程序,它使用路由器功能將兩個頁面呈現為單頁面應用程序。 到目前為止,就是這樣。 我有一個頁面,其中包含兩個用於導航的按鈕,以及一個包裝div(ng-view),當單擊相應的按鈕時,該頁面填充了兩個頁面的內容。
當我嘗試加載兩個頁面中較大的一個時,我收到以下錯誤:
SyntaxError: Unexpected token <
從angular.js:11594拋出此錯誤(我使用的是版本1.3.9)。 調試之后,我發現jQuery中拋出了一個異常,代碼如下:
this.empty().append( value );
我查看了輸入參數'value',它非常大。 它包含超過11,000行,大1.59 MB。
我在html格式檢查器( http://www.freeformatter.com/ )中運行輸入字符串。 格式很好,沒有額外的開放標記。
是否有可能jQuery的方法無法處理如此大的字符串? 我在Google上搜索了這樣的限制,但我發現的只是使用jQuery應用限制的建議,文檔( http://devdocs.io/jquery/append )沒有提到這樣的限制。
筆記:
謝謝。
你要面對的第一個限制是,如果字符串超過512個字節,那么它創建的dom片段不會被緩存。 下一個限制是瀏覽器中.innerHTML的限制。 但是它非常巨大(高)......但是在附加大量內容的同時,你將面臨巨大的滯后(可能需要很長時間才能加載)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.