導航:首頁 > 編程語言 > swing網頁js渲染

swing網頁js渲染

發布時間:2023-02-02 04:12:05

A. 如何判斷頁面的js渲染完畢

這個問題的核心不是技術,而是什麼是「js渲染完畢」。
我舉個例子,有一個頁面,每5秒從後端拉一次數據,在頁面上更新幾個條目,永遠這樣不結束,那麼這個頁面什麼時候「渲染完畢」?

B. 怎樣保證js在頁面元素渲染完後再執行

vue.js則需要結合watch和nextTick方法來使用。具體方法如下。

C. js大數據量如何實現頁面的局部渲染(不是局部刷新)--解決方法

把看到的區域當畫布,創建足夠能展現界面的Dom就夠了。
比如一個屏幕的高度一般是800像素左右,假設一條記錄佔用的高度是20像素,我們只用創建40個對象即可。
接下來就是對這40個對象進行數據填充,通過滾動條調整填充數據的起始下標。
10W條記錄,IE下有些卡
<style type="text/css">
.panel{
overflow:scroll;
width:200px;
height:80%;
}
.panel .scroll{
}
.item{
width:500px;
height:20px;
}
.odd{
background-color:#ccc;
}
.items{
overflow:hidden;
position:absolute;
}
.red{
color:red;
}
.green{
color:green;
}
</style>
<script>
window.console = window.console || { log: function() {} };

function absolutePoint(element) {
var result = [element.offsetLeft, element.offsetTop];
element = element.offsetParent;
while (element) {
result[0] += element.offsetLeft;
result[1] += element.offsetTop;
element = element.offsetParent;
}
return result;
}
function ListView(options){
options = options || {};

var self = this,
$C = function(tagName) { return document.createElement(tagName); }, // 創建節點
p,
height,
item_height, // 項高
view_count, // 可見項條數
parent = options.parent || document.body, // 容器
height, // 面板歷史高度
div_panel = $C("div"),
div_scroll = $C("div"),
div_items = $C("div"),
div_items_list = [$C("div")],
freed = [div_panel, div_scroll, div_items]; // 可釋放的對象

div_panel.className = "panel";
parent.appendChild(div_panel);

div_items.className = "items";
document.body.appendChild(div_items);

div_scroll.className = "scroll";
div_panel.appendChild(div_scroll);

div_panel.onscroll = function() {
doChange();
}
div_panel.onresize = function() {
doChange();
}

div_items_list[0].className = "item";
div_items.appendChild(div_items_list[0]);

div_scroll.style.width = div_items_list[0].clientWidth + "px";
item_height = div_items_list[0].clientHeight;

p = absolutePoint(div_panel);
with(div_items.style) {
left = p[0] + "px";
top = p[1] + "px";
width = div_panel.clientWidth;
height = div_panel.clientHeight;
}
/**
* 界面改變
*/
function doChange() {
if (!item_height) return;
var i, div;
if (height != div_panel.clientHeight) {
height = div_panel.clientHeight;
view_count = parseInt(height / item_height);
for (i = div_items_list.length; i < view_count; i++) {
div = $C("div");
div.className = "item" + (i % 2 == 0 ? "" : " odd");
div_items.appendChild(div);
div_items_list.push(div);
}
for (i = 0; i < div_items_list.length; i++) {
div_items_list[i].style.display = i < view_count ? "" : "none";
}
div_scroll.style.height = div_panel.clientHeight + options.count - view_count + "px";
console.log(["view_count", view_count]);
}
div_items.scrollLeft = div_panel.scrollLeft;
if (!options.ondrawitem) return;
i = Math.min(view_count, div_items_list.length);
while(i--) {
// 重新繪制
options.ondrawitem(i + div_panel.scrollTop, div_items_list[i]);
}
}

doChange();
this.doChange = doChange;
/**
* 釋放Dom對象
*/
this.dispose = function() {
var i = freed.length;
while(i--) {
freed[i].parentNode.removeChild(freed[i]);
}
i = freed.length;
while(i--) {
div_items_list[i].parentNode.removeChild(div_items_list[i]);
}
}
}
function format(template, json) {
if (!json) return template;
return template && template.replace(/\$\{(.+?)\}/g, function() {
return json[arguments[1]];
})
}
window.onload = function() {
var i = 100000, data = new Array(i);
while(i--) {
data[i] = { index: i, random: Math.random(), key: (+new Date()).toString(36) };
}
var listview = new ListView({
count: data.length,
ondrawitem: function(i, div) {
div.innerHTML = format(" <em>${index} </em> <span class=\"red\">${random} </span> <span class=\"green\">${key} </span>", data[i]);
}
});
};
</script>

D. 純js在網頁中渲染一個列表,列表中的數據用js定義一個數組,存儲在數組中,至少要有兩個欄位。

var data = {["a-1","a-2"],["b-1","b-2"]};
for(var i = 0 ; i < data.length ; i++){
data[i][0] ;// 第一個數據
data[i][1]
}

E. js大數據量如何實現頁面的局部渲染(不是局部刷新)

不知道你所說的「實現局部渲染」是什麼意思,
不就是載入時間太長了?
這里要優化的,回肯定是你的js代碼,
比如答,盡量減少對document的操作次數(可組裝成一條或幾條記錄後,再將生成的html添加到document,而不是一邊組裝一邊添加)
另外可以對1000多條數據分頁啊!

F. js按需載入文件如何確保文件載入再渲染頁面

1、首先在js軟體中打開右上角的文件選項。
2、其次在文件中點擊保存,後選擇渲染。
3、最後即可確保文件載入再渲染頁面。

G. swing中 編輯器和渲染器有什麼作用

簡單說,渲染器是組件的外在表現,編輯器是組件進入編輯狀態時的功能體現,比如表格的某個單元格,你可以設置其渲染效果為jcombobox,而編輯器為jtextfield,那麼你選擇該單元格時,界面展示為一個下拉框(渲染),而你雙擊該單元格時,界面表現出來的就是一個文本框(編輯),兩者之間無直接關聯

閱讀全文

與swing網頁js渲染相關的資料

熱點內容
哪個app可以賣二手課程 瀏覽:474
互聯網app如何算毛利 瀏覽:300
excel文件處理插件 瀏覽:666
在電腦上怎麼找不到微信文件夾 瀏覽:116
u盤打開後有文件沒內容 瀏覽:210
編程怎麼輸出逗號 瀏覽:421
微信玩紅包怎麼定大小 瀏覽:825
電腦病毒測試代碼 瀏覽:118
得物app為什麼總是更新 瀏覽:965
銀企對賬程序 瀏覽:164
r讀取excel文件 瀏覽:363
上古卷軸5控制台附魔代碼 瀏覽:514
緩存文件合並找不到文件 瀏覽:871
桌面保存一下文件找不到 瀏覽:645
程序美工標准 瀏覽:191
漂流瓶的文件在哪裡 瀏覽:319
數據的正負偏差怎麼計算 瀏覽:242
文件名用不用帶TXT 瀏覽:968
小米十數據線是哪個 瀏覽:463
caddws文件 瀏覽:962

友情鏈接