• Tư vấn điều trị
      bệnh khàn tiếng


    www.trikhantieng.com

    Liên hệ + 0913163316

BlogList111

Việt Nam Gia Phả, nơi lưu trữ Gia Phả của người Việt Nam  Kiến thức Blogspot Ngonluanho: Nhung cau chuyen thap lua-Tin-Cay-Men Vngreenzone Là một nơi chia sẻ kinh nghiệm làm blogger - Nơi tôn vinh tâm hồn blogger Việt

Thủ thuật yêu cầu: Script liệt kê và gọi script

18
02/08/2011

Trong quá trình thiết kế weblog trên nền tảng Blogspot, hẳn bạn đã, đang và sẽ vọc rất nhiều script, dẫn đến thực tế là gắn nhiều script vào Template sẽ gây ảnh hưởng đến tốc độ load trang. Có một yêu cầu của bạn đọc về việc làm sao có script gọi được script, tức là gom các file script vào một chỗ rồi đến lúc nào cần script đó hoạt động thì mới gọi nó ra, chứ không cho nó load hết toàn bộ trong trang. Mình viết thủ thuật này theo yêu cầu của bạn MrWinni.

Mình có thể mô tả thủ thuật này như sau: Trước hết mình tạo một tiện ích để chứa các file script và mình đặt tiện ích này lên trên tiện ích Header để dễ bề quản lý, sau đó mình dùng script liệt kê tất cả các file js cần dùng trong Template rồi đặt vào tiện ích này; mỗi khi cần bất kỳ một file js nào hoạt động thì chỉ cần dùng lệnh gọi script đó ra là được, như vậy sẽ không load tất cả các file js ra cùng một lúc. Nói như thế nghĩa là giả sử mình sử dụng đến 1000 file js trong Template song vẫn không hề ảnh hưởng đến tốc độ load trang của Template.

Đến đây, mình tin rằng bạn sẽ cần đến thủ thuật này hơn bao giờ hết. Vậy thì hãy thực hiện như sau:

Bước 1. Đăng nhập Blogger, vào Design >> Edit HTML, chọn Expand Widget Templates. Tìm sau thẻ <body> rồi đến thẻ <div id='header'> hoặc thẻ <div id='topnavbar'> (nếu Template của bạn có thanh menu đỉnh) và đặt trước thẻ đó bằng đoạn code bên dưới:

<b:section class='scripcontainer' id='scriptcontainer'>
<b:widget id='HTML100' locked='false' title='' type='HTML'>
<b:includable id='main'>
<!-- only display title if it's non-empty -->
<b:if cond='data:title != &quot;&quot;'>
<h2 class='title'><data:title/></h2>
</b:if>
<div class='widget-content'>
<data:content/>
</div>
</b:includable>
</b:widget>
</b:section>
Lưu Template.

Bước 2. Vào Page Elements, kéo đến đầu Layout, sát trên phần Header, chọn Edit để chỉnh sửa tiện ích HTML/Javascript rồi đặt đoạn code như bên dưới vào đó:
<script type="text/javascript">
// ScriptListing&Reading Script by www.thuthuatblogger.info
function readScript(index) {

URLBase="http://tenban.googlecode.com/files/";
scriptLIST=new Array(

0,"",
1,"code1.txt",
2,"code2.txt",
3,"code3.txt",
4,"code4.txt",
5,"code5.txt",
6,"code6.txt",
7,"code7.txt",
8,"code8.txt",
9,"code9.txt",
10,"code10.txt",

1000,""
);

regNum = index * 2 +1;
document.write('<script src="' + URLBase + scriptLIST[regNum] + '"><\/script>');
}
</script>
Trong trường hợp này, bạn upload các file js có đuôi .js hoặc .txt vào cùng một nguồn lưu trữ file (ví dụ googlecode hoặc host riêng của bạn), đặt URL ngồn (URLBase) cho script. Cứ mỗi lần dùng thêm file js thì bạn chỉ cần thêm số thứ tự theo định dạng như trên.

Mỗi khi bạn muốn một script nào đó hoạt động tại vị trí theo ý bạn thì chỉ cần sử dụng lệnh gọi script như sau:

<script>readScript(1);</script>

Hoặc <script>readScript(2);</script>

Hoặc <script>readScript(3);</script>

Cứ như thế chỉ cần thay số thứ tự cho file js cần gọi ra là được.

Nếu bạn upload các file js (lưu tên lộn xộn theo đuôi .js và .txt) lên các host khác nhau thì ở Bước 2, bạn sử dụng code như sau:
<script type="text/javascript">
// ScriptListing&Reading Script by www.thuthuatblogger.info
function readScript(index) {
scriptLIST=new Array(
// Đây là danh sách các URL dẫn đến nguồn script
0,"",
1,"http://www.tenmien1.com/files/code1.js",
2,"http://www.tenmien2.com/files/code2.txt",
3,"http://www.tenmien3.com/files/code3.js",
4,"http://www.tenmien4.com/files/code4.txt",
5,"http://www.tenmien5.com/files/code5.js",
6,"http://www.tenmien6.com/files/code6.txt",
7,"http://www.tenmien7.com/files/code7.txt",
8,"http://www.tenmien8.com/files/code8.js",
9,"http://www.tenmien9.com/files/code9.txt",
10,"http://www.tenmien10.com/files/code10.txt",

1000,""
);
regNum = index * 2 +1;
document.write('<script src="' + scriptLIST[regNum] + '"><\/script>');
}
</script>
Tuy code này đơn giản song vẫn hy vọng rằng hiệu quả nó đem lại là vô cùng lớn đối với các bạn.

{18 bình luậnAdd yours ?}

13:41:00, 2 thg 8, 2011

Xí phần phát đã, sẽ tìm hiểu sau

Reply
15:15:00, 2 thg 8, 2011

@vietutd Bác này nhanh quá :51)

Reply
15:22:00, 2 thg 8, 2011

Cảm ơn anh, em chờ cái này lắm

Reply
15:24:00, 2 thg 8, 2011

@peace19812006: bác xem đây: http://conduong.blogspot.com/ em ngồi rình ở đó bài nào mới em chả vồ kịp :D

Reply
21:35:00, 2 thg 8, 2011

@vietutd Pro thiệt nhưng còn nhược điểm là update hơi chậm đó. :51)

Reply
21:37:00, 2 thg 8, 2011

Trùi ui, ra là bác Huỳnh Nhật Hà đã chuyển nhà, làm cho mấy cái link Bookmark từ blog của bác ý die hết, em tưởng bác bị sao cơ :(

Reply
22:01:00, 2 thg 8, 2011

Xin chào May Thy, bất ngờ quá phải k, cứ tưởng tớ die thiệt rồi há. Mới có mấy ngày mà mọi thứ thay đổi nhanh quá.

Reply
08:05:00, 3 thg 8, 2011

@peace19812006: Em dùng feed mà bác, cho nên cái đó là do Google chậm, chứ ko phải em :D

Reply
13:23:00, 2 thg 9, 2011

cho em hỏi
nếu trên 1 trang em dùng lại nhiều lần 1 widget thì khi tải trang nó cũng phải tải lại nhiều lần chỉ 1 cái file js >> load châm

dùng tiện ích này thì chỉ cần load file js về 1 lần rồi dùng đuọc luôn cho nhiều widget
hay là phải dùng cách khác vậy anh !

Reply
01:15:00, 17 thg 9, 2011

Anh Hà ơi, trong temp có đoạn code của js như sau:
<script src='URL_JS'/>
Em đã thay thành <script>readScript(1);</script> nhưng nó không hoạt động anh ạ!

Reply
20:52:00, 17 thg 9, 2011

@Linh Dung E đã tạo code bước 2 chưa, nếu tạo thì e tạo như thế nào?

Reply
21:18:00, 17 thg 9, 2011

@Huỳnh Nhật Hà Em tạo như thế này nè anh:
<script type="text/javascript">
// ScriptListing&Reading Script by www.thuthuatblogger.info
function readScript(index) {

URLBase="http://ldv.googlecode.com/files/";
scriptLIST=new Array(

0,"",
1,"tab.js",
2,"pagenavi.min.js",
3,"newer-older-related-posts.js",
4,"jquery1.min.js",
5,"jquery.min.js",
6,"corect.js",
7,"tool.js",
8,"plusone.js",
9,"VNE.txt",
1000,""
);

regNum = index * 2 +1;
document.write('<script src="' + URLBase + scriptLIST[regNum] + '"><\/script>');
}
</script>
Còn đoạn code mà em thay thế như thế này:
<script src='http://ldv.googlecode.com/files/tool.js'/>
<script src='http://ldv.googlecode.com/files/corect.js'/>
Em thay thành:
<script>readScript(7);</script>
<script>readScript(6);</script>
Nhưng không hoạt động anh ạ!
Trước đó em thay các file js khác như: jquery1.min.js vẫn hoạt động anh ạ!
Ví dụ em thay <script src='http://apis.google.com/js/plusone.js' type='text/javascript'/> bằng <script>readScript(8);</script> thì nó hoạt động bình thường.

Reply
21:59:00, 17 thg 9, 2011

@Linh Dung Nếu file js upload lên nhiều host khác nhau và đặt lộn xộn đuôi .js .txt thì dùng cách thứ 2 mới hoạt động được.

Reply
20:23:00, 25 thg 12, 2011

Very well! Thanks you!

Reply
11:11:00, 1 thg 1, 2012

Mình ko rõ lắm đoạn này:
Đăng nhập Blogger, vào Design >> Edit HTML, chọn Expand Widget Templates. Tìm sau thẻ body rồi đến thẻ div id='header' hoặc thẻ div id='topnavbar' (nếu Template của bạn có thanh menu đỉnh) và đặt trước thẻ đó bằng đoạn code bên dưới

Theo trên thì đặt đoạn code mới vào trước hay sau thẻ body? Trong template của mình ko có thẻ div id='header' mà chỉ có div id='header-wrapper'. hik, làm ko được, mong Hà chỉ rõ hơn

Reply
14:54:00, 1 thg 1, 2012

tôi làm lại được rùi.Thanks! Phải là Đặt đoạn code trước dong <body>

Reply
13:12:00, 9 thg 6, 2012

Cách này rất hay, tiết kiệm công sức khi quản lý và sử dụng javascript trên blog :x :3) Gỗ conwood

Reply
21:56:00, 6 thg 8, 2016

biết tìm ở đâu tử vi 12 cung hoàng đạo

Reply
Nội quy! Đóng lại Khi bạn viết bình luận, cần tuân thủ một số quy tắc sau:
» Bình luận phải nghiêm túc và không chứa các liên kết quảng cáo.
» Có thể sử dụng các thẻ <b> … </b>,<i> … </i>, <a href="URL..."> ... </a>.
» Yêu cầu thủ thuật tại mục Yêu cầu thủ thuật hoặc hỏi tại mục Hỏi và Đáp.
More →
Chữ đậm Chữ nghiêng Chữ nghiêng 2 Chèn Link Chèn Link Mã hóa code Help ?Nhấn vào biểu tượng hoặc kiểu chữ hoặc chèn link sau đó nhấn nút Chọn rồi copy (Ctrl + C) để paste (Ctrl + V) vào khung viết bình luận. Mã hóa code nếu bạn muốn đưa code vào bình luận.

Chọn Xóa

Next post: Bài đăng Mới hơn

Previous post: Bài đăng Cũ hơn