Wednesday, January 12, 2011

Tiện ích Người theo dõi biến mất vì Prototype?

Như các bạn biết thì thư viện Scriptaculous rất hữu ích khi hỗ trợ tạo các hiệu ứng đẹp trong thiết kế web. Trong quá trình ứng dụng Scriptaculous vào Blogger, tôi nhận thấy một sự cố không mong muốn là tiện ích Người theo dõi (Followers) “bỗng dưng biến mất” khi đưa thư viện Scriptaculous vào blogspot. Thật đáng tiếc. Đó là do có sự không tương thích giữa script trong tiện ích Người theo dõi với thư viện Prototype trong Scriptaculous.

Giải pháp là thêm một đoạn script nhỏ khi đưa thư viện Prototype vào Blogger. Thường thì ta đặt đoạn code sau đây vào trước thẻ </head> trong Template.

<script src='http://www.google.com/jsapi'/>
<script>
google.load(&quot;prototype&quot;, &quot;1.6.1.0&quot;);
google.load(&quot;scriptaculous&quot;, &quot;1.8.3&quot;);
</script>

Để khắc phục vấn đề không hiển thị tiện ích Người theo dõi, cần phải sử dụng đoạn code như thế này.

<script src='http://www.google.com/jsapi'/>
<script>
google.load(&quot;prototype&quot;, &quot;1.6.1.0&quot;);
window.JSON = {
parse: function (st) { return st.evalJSON(); },
stringify: function(obj) { return Object.toJSON(obj); }
};
google.load(&quot;scriptaculous&quot;, &quot;1.8.3&quot;);
</script>

Phần được đánh dấu màu đỏ là phần thêm vào để xử lý sự không tương thích giữa Prototype và script trong tiện ích Người theo dõi.

No comments:

Post a Comment