10

对不起,这里真的很愚蠢的问题。如果您发布有关 javascript 或 jquery 的问题,人们通常会说 - 创建一个 jsfiddle。

所以我做了。我的问题是关于让 div 使用 jquery 向上滑动,但是,我什至无法在 jsfiddle 中运行基本的 javascript 函数。

http://jsfiddle.net/ubq6E/

<div onclick="showit()">Hello</div>
function showit()
{
alert('hi');
}

一个div,点击它调用一个javascript函数,但是jsfiddle说这个函数没有定义。你不能在jsfiddle中这样做吗?

4

1 回答 1

10

您已onLoad在 jsfiddle 中选择了默认选项。

这会导致站点将您的整个代码包装在一个回调函数中,这意味着您的showit函数不是 DOM0 内联事件处理程序所要求的全局函数。

根据我个人的偏好,有几种解决方法:

  1. 不要使用 DOM0 内联处理程序,它们真的很老派 -element.addEventListener()改为查看并将您的标记与 JS 分开。

  2. window.showit = function() { ... }改为强制您的函数出现在全局名称空间中。

  3. 选择“不换行”选项之一

于 2013-03-21T09:26:03.030 回答