回答編集履歴
1
調整
test
CHANGED
@@ -47,3 +47,97 @@
|
|
47
47
|
</script>
|
48
48
|
|
49
49
|
```
|
50
|
+
|
51
|
+
|
52
|
+
|
53
|
+
# プログレスバー付き
|
54
|
+
|
55
|
+
読み込み状況によって進捗をあげる必要がありますが、概ねこんな感じです
|
56
|
+
|
57
|
+
実際には非同期での部品の呼び出しを$.whenに列記すると
|
58
|
+
|
59
|
+
すべての非同期処理をまってdoneされるような流れになると思います
|
60
|
+
|
61
|
+
実際に実装してみてわからなければ聞いてください
|
62
|
+
|
63
|
+
```javascript
|
64
|
+
|
65
|
+
<link rel="stylesheet" href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css" />
|
66
|
+
|
67
|
+
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
|
68
|
+
|
69
|
+
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>
|
70
|
+
|
71
|
+
<script>
|
72
|
+
|
73
|
+
$(function(){
|
74
|
+
|
75
|
+
var d1=$('<div>').css({"position":"absolute","background-Color":"yellow","height":"50%","width":"100%","top":"0px","left":"0px","z-index":"3"});
|
76
|
+
|
77
|
+
var d2=d1.clone().css({"top":"50%"});
|
78
|
+
|
79
|
+
d1.appendTo('body');
|
80
|
+
|
81
|
+
d2.appendTo('body');
|
82
|
+
|
83
|
+
var d = $.Deferred();
|
84
|
+
|
85
|
+
var count=0;
|
86
|
+
|
87
|
+
var progressbar = $( "#progressbar" ).css({top:"50%",position:"absolute",width:"99%","z-index":"4","background-Color":"gray"});
|
88
|
+
|
89
|
+
var progressLabel = $( ".progress-label" ).css({float:"left","margin-left":"50%","margin-top":"5px","font-weight":"bold","text-shadow":"1px 1px 0 #fff"});
|
90
|
+
|
91
|
+
var timerId=0;
|
92
|
+
|
93
|
+
$.when(
|
94
|
+
|
95
|
+
d.promise(timerId=setInterval(function(){
|
96
|
+
|
97
|
+
progressbar.progressbar({
|
98
|
+
|
99
|
+
value: (count+1)*10,
|
100
|
+
|
101
|
+
change: function() {
|
102
|
+
|
103
|
+
progressLabel.text( progressbar.progressbar( "value" ) + "%" );
|
104
|
+
|
105
|
+
},
|
106
|
+
|
107
|
+
create:function(event, ui){
|
108
|
+
|
109
|
+
$(this).find('.ui-widget-header').css({'background-color':'aqua'});
|
110
|
+
|
111
|
+
}
|
112
|
+
|
113
|
+
});
|
114
|
+
|
115
|
+
if(count>=10){
|
116
|
+
|
117
|
+
clearInterval(timerId);
|
118
|
+
|
119
|
+
d.resolve();
|
120
|
+
|
121
|
+
}
|
122
|
+
|
123
|
+
count++;
|
124
|
+
|
125
|
+
},300))
|
126
|
+
|
127
|
+
).done(function(){
|
128
|
+
|
129
|
+
progressbar.remove();
|
130
|
+
|
131
|
+
d1.hide("slide", {direction: "up"}, 1000);
|
132
|
+
|
133
|
+
d2.hide("slide", {direction: "down"}, 1000)
|
134
|
+
|
135
|
+
});
|
136
|
+
|
137
|
+
});
|
138
|
+
|
139
|
+
</script>
|
140
|
+
|
141
|
+
<div id="progressbar"><div class="progress-label">Loading...</div></div>
|
142
|
+
|
143
|
+
```
|