[英]Cufon IE Invalid Argument
好吧,我對此有些困惑。 我要Cufon用非Web標准字體替換我的文本。 這是我使用了很多腳本的腳本,過去從來沒有遇到過問題。 隨之而來的是IE,它決定毀了我的一天。
我使用的是cufon的最新版本(截至本文發稿時),並且在header.php文件中(針對Wordpress網站)引用了許多不同的元素:
<script type="text/javascript" language="javascript" >Cufon.replace('.learnmore', { color: '#fff', textShadow: '1px 1px #0e1b0a', hover: { textShadow: '1px 1px #000', color: '#fff' } }); </script>
<script type="text/javascript" language="javascript" >Cufon.replace('.logo span, h1, h2, h4 , h5, h6, .learnmore, .prosto_button, .comment-reply-link, .slide_button, .page_title .bold p, .textonlycont, .h-title', { fontFamily: "Aller"}); </script>
<script type="text/javascript" language="javascript" >Cufon.replace('.h-title', { textShadow: '1px 2px #5C1003' }); </script>
<script type="text/javascript" language="javascript" >Cufon.replace('h1', { color: '-linear-gradient(white, #ececec)', textShadow: '#862905 0 2px'}); </script>
<script type='text/javascript' src='http://localhost/wordpress/wp-content/themes/pondera/js/cufon/Vegur.font.js?ver=1.0.0'></script>
<script type="text/javascript" language="javascript" >Cufon.replace('h3, #serv-benefit h4, p.quote, #letstalk label', { fontFamily: "Vegur"}); </script>
<script type="text/javascript" language="javascript" >Cufon.replace('#letstalk label', { fontFamily: "Vegur", textShadow: '1px 2px #293719' }); </script>
不確定這是否是引用多種不同字體的最佳方法,但是在所有瀏覽器欄IE( 特別是我當前正在運行的v.8.0.7)中 ,它是否都能正常工作。 IE給出以下錯誤報告:
網頁錯誤詳細信息:
消息:無效的參數。 行:7字符:8520代碼:0 URI: http://localhost/wordpress/wp-content/themes/pondera/js/cufon/cufon-yui.js?ver = 1.0.0
我研究了Cufon js文件,這似乎在D.replaceChild
參考之前。 現在我離JS專家還很遠,所以我不知道是什么導致了這個問題...
僅供參考,通過測試,我嘗試刪除第一個Cufon.replace(...
參考(即上面的代碼))中的所有欄,以查看這是否是我的較差的編碼,但這並未解決。
任何建議將不勝感激! 在此先感謝您閱讀本文檔,如果需要,我很樂意提供更多信息。
好的,我想我已經找到了某種(某種程度上的)靈魂……並且可能是Cufon本身的一個錯誤(盡管如果我錯了,我也不會感到驚訝!)。
正如Epascarello所建議的,我被證明可以減少腳本標記的代碼布局:
<script type="text/javascript" language="javascript" >
Cufon.replace('.logo span, h1, h2, h5, h6, .learnmore, .prosto_button, .comment-reply-link, .slide_button, .page_title .bold p, .textonlycont, .h-title', { fontFamily: "Aller"});
Cufon.replace('h1', { color: '-linear-gradient(white, #ececec)', textShadow: '#862905 0 2px'});
Cufon.replace('.learnmore', { color: '#fff', textShadow: '1px 1px #0e1b0a', hover: { textShadow: '1px 1px #000', color: '#fff' }});
Cufon.replace('.h-title', { textShadow: '1px 2px #5C1003' });
</script>
<script type='text/javascript' src='http://localhost/wordpress/wp-content/themes/pondera/js/cufon/Vegur.font.js?ver=1.0.0'></script>
<script type="text/javascript" language="javascript" >
Cufon.replace('h3, #serv-benefit h4, p.quote, #letstalk label', { fontFamily: "Vegur"});
Cufon.replace('#letstalk label', { fontFamily: "Vegur", textShadow: '1px 2px #293719' });
</script>
在執行此操作的同時,我花了一些時間依次測試插入的代碼,以查看何時發生錯誤。 在此期間,我測試了每個選擇器和所有工作的條形... h4 !?!? 為了澄清是否將上面代碼中的第一行修改為以下內容,將發生IE錯誤:
Cufon.replace('.logo span, h1, h2, h4, h5, h6, .learnmore, .prosto_button, .comment-reply-link, .slide_button, .page_title .bold p, .textonlycont, .h-title', { fontFamily: "Aller"});
奇怪嗎? 我正在使用的靈魂方法是修改標記以避免H4標簽,但是大概這是Cufon中的錯誤?
希望這對某人有幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.