gpt4 book ai didi

javascript - SyntaxHighlighter 和 jQuery 的 IE 错误 - "Unable to get value of the property ' slice' : object is null or undefined"

转载 作者:太空宇宙 更新时间:2023-11-04 15:35:10 25 4
gpt4 key购买 nike

我真的很喜欢SyntaxHighter - 结果是最漂亮的代码。不幸的是,我对 IE7 和 IE8 中的一个骇人听闻的 JS 错误大发雷霆,这将阻止我完全使用这个优秀的插件。

这是一个测试用例。我包括在内

<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>

在我的标题中,以便 IE7 和 IE8 可以识别 HTML5 元素。

在我的测试页正文中,我只有几个导航项:

<nav id="top-nav" class="f16 clearfix">
<ul id="nav-menu">
<li><a href="index.htm">Home</a></li>
<li><a href="branding.htm">Branding</a>
<ul class="nav-submenu">
<li><a href="logos1">Logos 1</a></li>
<li><a href="logos2">Logos 2</a></li>
<li><a href="logos3">Logos 3</a></li>
</ul>
</li>
</ul>
</nav>

除了 JQuery 和 SyntaxHighlighter 的这些包含之外,没有别的了,这个小脚本初始化 SyntaxHighlighter 并尝试向导航菜单添加事件监听器。

<script src="extra/syntax-highlighter/shCore.js"></script>
<script src="extra/syntax-highlighter/shBrushJScript.js"></script>
<script src="extra/syntax-highlighter/shBrushXml.js"></script>
<script>
SyntaxHighlighter.all();

$(document).ready(function(){
$('#nav-menu').on('mouseenter', function () {
$(this).children('.nav-submenu').fadeIn('fast');
})
})
</script>

当我在 IE7 和 IE8 中查看此页面时,出现错误“SCRIPT5007:无法获取属性‘slice’的值:对象为 null 或未定义”,我的 jQuery 无法工作。

通过阅读,我了解到这可能与 SyntaxHighlighter 使用的 XRegExp 有关。根据this jQuery bug ticket XRegExp 中存在一些错误,已在 XRegExp 1.5.1 中修复。不幸的是,此修复程序似乎没有找到适用于 SyntaxHighlighter 的方法。在 SyntaxHighlighter 的 Bitbucket page 上讨论了类似的错误.我尝试了一个人生成的修改后的 XregExp.js 和 shCore.js 文件,但它没有解决我的问题。

有没有人遇到过这种情况?否则我将不得不使用其他一些蹩脚的语法荧光笔!

最佳答案

我在 IE7/8 中遇到了同样的问题

我最终通过从 GitHub (https://github.com/alexgorbatchev/SyntaxHighlighter) 获取插件的最新版本来修复它们,它比 BitBucket 上的存储库更新。

关于javascript - SyntaxHighlighter 和 jQuery 的 IE 错误 - "Unable to get value of the property ' slice' : object is null or undefined",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9753277/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com