根据author,如下所示:
<html>
<head>
<!-- JS for Medium -->
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/rangy/1.3.0/rangy-core.min.js" defer></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/rangy/1.3.0/rangy-classapplier.min.js" defer></script>
<script type="text/javascript" src="https://cdn.rawgit.com/jzaefferer/undo/master/undo.js" defer></script>
<script type="text/javascript" src="https://cdn.rawgit.com/jakiestfu/Medium.js/master/medium.min.js" defer></script>
<!-- CSS for Medium -->
<link rel="stylesheet" type="text/css" href="https://cdn.rawgit.com/jakiestfu/Medium.js/master/medium.css"/>
</head>
<body>
<div id="editor"></div>
<script>
new Medium({
element: document.getElementById('editor')
});
</script>
</body>
</html>
应该完美,但我一直在
未捕获的ReferenceError:未定义中 - 第16行
我在这里做错了吗?我花了最后2个小时没有运气......
感谢。
答案 0 :(得分:2)
defer
属性将脚本设置为最后运行 - 页面加载后。因此,代码在载入Medium.js之前运行。有两种可能的解决方案您可以删除该属性以立即加载库及其组件。或者在整个页面包含脚本时添加事件监听器:
window.onload = function(){
new Medium({
element: document.getElementById('editor')
});
}
答案 1 :(得分:0)
遇到同样的问题,直到我意识到我错过了所有依赖项。这个特殊的错误似乎是由于Rangy失踪而产生的。
<head>
<script src="rangy-core.js"></script>
<script src="rangy-classapplier.js"></script>
<script src="undo.js"></script>
<script src="medium.js"></script>
<link rel="stylesheet" href="medium.css">
</head>