jQuery的,當然所需要的所有在裏面
$(document).ready = function() {};
同樣,SVG的網絡要求:
window.onsvgload = function() {};
是否有一個正確的,優雅的方式來結合這些不會引入任何問題?
jQuery的,當然所需要的所有在裏面
$(document).ready = function() {};
同樣,SVG的網絡要求:
window.onsvgload = function() {};
是否有一個正確的,優雅的方式來結合這些不會引入任何問題?
您只需綁定功能,在適當的情況下運行,這樣的:
$(function() { //shortcut for $(document).ready(function() {
//stuff that needs the DOM to be ready
});
$(window).bind('svgload', function() {
//SVG stuff
});
有沒有害處同時使用,其實這就是適當使用,一直使用您需要的情況下,這與document.ready
vs window.load
沒有什麼不同,當你需要準備好圖像時,不僅僅是DOM。在支持它的這個答案的時候瀏覽器後onload
如果它的事項,發生,不知道這會在其他瀏覽器都支持它雖然是一致的。
謝謝,但我仍然有點困惑。我在哪裏放兩種需要的東西? – colinmarc 2010-06-09 17:59:00
@colinmarc:在DOM準備就緒後,'svgload'將會觸發,因爲它是依賴的,如果它需要將它放在'.bind('svgload')'調用中... SVG元素必須被設置並加載那一點,所以DOM在那之前就已經準備好了。如果只需要DOM,請使用'document.ready'。 – 2010-06-09 18:03:53
這實際上給了我一些問題 - 我最終以我在下面發佈的內容去做 - 但我會留下答案,因爲你真的幫助我理解發生了什麼 – colinmarc 2010-06-09 18:56:57
最後發現了這個在「用戶手冊」:
$(document).ready(function() {
window.addEventListener('SVGLoad', function() {
// ready to work with SVG now
}, false);
});
這不是跨瀏覽器兼容的。您應該使用jquery的綁定方法或創建一個函數來決定是否使用addEventListener,attachEvent或設置window.onsvgload。 – KeatsKelleher 2011-04-18 14:53:16
怎麼樣粘貼的'onsvgload' – 2010-06-09 17:28:15
我的整個腳本有當頁面加載(第一)和SVG的網絡中運行的內容已經加載(第二) - 內容是,好吧,一切 – colinmarc 2010-06-09 17:31:54