我喜歡將Tomates從Materializecss集成到SVG。我能夠從導入的Materializecss
和css
js
,但是當我加載SVG我得到Uncaught TypeError: Cannot use 'in' operator to search for 'touchAction' in null
添加Materializecss吐司到SVG
例子:http://www.idoodler.de/svgTest.svg
有什麼辦法,使這項工作?
我喜歡將Tomates從Materializecss集成到SVG。我能夠從導入的Materializecss
和css
js
,但是當我加載SVG我得到Uncaught TypeError: Cannot use 'in' operator to search for 'touchAction' in null
添加Materializecss吐司到SVG
例子:http://www.idoodler.de/svgTest.svg
有什麼辦法,使這項工作?
我在這方面掙扎了一段時間。我嘗試HTML編碼圖像,使用base64編碼圖像源,直接SVG內聯圖像源。我沒有這些工作,這主要是由於引號。簡單的舊網址證明是最簡單的。 (而且我認爲最後的方法)
該解決方案被證明到底很簡單:
Materialize.toast('<img src=\"http://www.idoodler.de/svgTest.svg\" />', 5000);
逃逸是一種醜陋且容易出錯,雖然。第一次我得到這個工作,但叫我自己的函數,而不是觸發Materialize.toast(的)直接:
<script>
function imageToast(imageUrl) {
Materialize.toast('<img src="' + imageUrl + '" />', 5000);
}
</script>
imageToast(http://www.idoodler.de/svgTest.svg);
通過包裝在它自己的函數圖像源,我們沒有處理所有再加上種類的引號。該解決方案還應該使用純SVG或base64在線採購圖像。
我的猜測是你想要這種動態,對吧?我的建議是簡單地生成所需的SVG,保存它,然後直接將Toast()應用於URL。
來源: https://css-tricks.com/probably-dont-base64-svg/
這裏有一個Codepen您可以嘗試: http://codepen.io/anon/pen/GJrvpj
好運。