为什么写在window.onload=function(){}里面的函数在执行的时候显示未定义

<scripttype="text/javascript">$(document).ready(function(){alert("ss");$('a.btn-ok,#d... <script type="text/javascript">
$(document).ready(function(){
alert("ss");
$('a.btn-ok, #dialog-overlay, #dialog-box').click(function () {
$('#dialog-overlay, #dialog-box').hide();
return false;
});
$(window).resize(function () {
//only do it if the dialog box is not hidden
if (!$('#dialog-box').is(':hidden')) popup();
});
function popup(message) {
var maskHeight = $(document).height();
var maskWidth = $(window).width();
var dialogTop = (maskHeight/3) - ($('#dialog-box').height());
var dialogLeft = (maskWidth/2) - ($('#dialog-box').width()/2);
$('#dialog-overlay').css({height:maskHeight, width:maskWidth}).show();
$('#dialog-box').css({top:dialogTop, left:dialogLeft}).show();
$('#dialog-message').html(message);
}
});
</script>
</head>
<body onload="popup('<p>You can pass html code to it as well:</p>">
<a href="javascript:popup('Lorem ipsum dolor sit amet')">Popup!</a>
<div id="dialog-overlay"></div>
<div id="dialog-box">
<div class="dialog-message"></div>
<a href="#" class="button"></a>
</div>
</body>
</html>
我把函数popup定义在window.onload里面的时候出现错误说popup为定义 就是 popup not defined
这是为什么?
展开
 我来答
阿飞畅悦观世界
2014-09-28 · 超过26用户采纳过TA的回答
知道答主
回答量:54
采纳率:100%
帮助的人:44.4万
展开全部
你把popup放在ready外面试试
追问
放在外面是可以,但是我想知道的是为什么放在里面不行..原因是什么?
追答
ready本来就是加载页面的时候调用的,也相当于一个事件,popup也可以看做一个事件,所以它在找popup的时候只会在上一层找,而你上一层只有ready。。就找不到咯
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式