-
Notifications
You must be signed in to change notification settings - Fork 123
/
Copy pathyslow.js
61 lines (56 loc) · 1.49 KB
/
yslow.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
/*
* ==VimperatorPlugin==
* @name yslow.js
* @description optimize the indicator of YSlow add-on.
* @description-ja YSlow アドオンの表示をいい感じにする。
* @author janus_wel <[email protected]>
* @version 0.10
* @minversion 2.0pre
* @maxversion 2.0pre
* ==/VimperatorPlugin==
*
* LICENSE
* New BSD License
*
* USAGE
* this plugin change YSlow indicators to non-display.
* you can use value 'y' in option 'pageinfo'.
* it will display performances of current page.
*
* EXAMPLE
* default + YSlow
* :set pageinfo=gfmy
*
* */
( function () {
// add-on check
const doc = window.document;
if (!doc.getElementById('yslowStatusBar')) {
liberator.log('yslow.js is need YSlow add-on: https://addons.mozilla.org/firefox/addon/5369', 0);
return;
}
// register pageinfo
let grade = doc.getElementById('yslowStatusGrade');
let size = doc.getElementById('yslowStatusSize');
let time = doc.getElementById('yslowStatusTime');
liberator.modules.buffer.addPageInfoSection(
'y',
'YSlow Status',
function (verbose) {
if(verbose) {
if (grade.value && grade.value !== 'YSlow') yield ['Grade', grade.value];
if (size.value) yield ['Size', size.value];
if (time.value) yield ['Time', time.value];
}
return;
}
);
// hide elements
[
grade,
size,
time,
].forEach(function (n) {
n.setAttribute('style', 'display: none !important;');
});
} )();