jquery紧急提问,js如何调用jquery内的函数?

$(document).ready(function(){functionfoo1(){alert(123);}});functionfoo2(){foo1();}调用f... $(document).ready(function(){
function foo1(){
alert(123);
}
});

function foo2(){
foo1();
}
调用foo2时说foo1未定义
说明:foo2无法放入ready中
因为有iframe会通过window.parent.foo2()调用它
放入ready后会提示foo2未定义
问:foo2如何调用foo1
展开
 我来答
LeeCan_Zeng
2012-07-09 · TA获得超过1998个赞
知道小有建树答主
回答量:691
采纳率:50%
帮助的人:202万
展开全部
$(document).ready(function(){
//代码
//ready里面包住是一个作用域 保护这里面的变量 函数不受外界污染 所以 外面是调用不到这里面
//定义的变量和函数的 把foo1发到外面声明 相当于在window的作用域下 同在window作用域下其他
//地方都可以调用foo1

})
function foo1(){//声明函数
$('body').addClass('body');
alert($('body')[0].className);

}
//调用
function foo2(){
foo1();

}
//这样就没问题
散步的__狼
推荐于2017-09-30 · TA获得超过235个赞
知道小有建树答主
回答量:117
采纳率:80%
帮助的人:42.9万
展开全部

函数是可以调用的,方法就不能调用,还有,JQ的函数里的对象是JQ,而JS和JQ的方法不能混着用,如果你JQ想用JS的方法就把对象转成JS对象,如果JS想用JQ的方法就把JS对象转成JQ对象

// JS获取对象
var obj = document.getElementById('id');
// 把JS对象转换到jQuery对象
var $obj = $(obj);
var $obj = $('#id');
// jQuery对象转换到JS对象
var obj = $obj.get(0);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wolimary12
推荐于2017-09-20
知道答主
回答量:27
采纳率:0%
帮助的人:24.8万
展开全部
$(document).ready(function(){}) 是若名函数,document,可以不写,可以写成这样$(function(){})
function(){}里定义的都是保护的东东,外面无法调用,但可以调外面的
追问
你意思我用iframe和选jquery冲突了呗,这可如何是好
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友46b235f5b2
2012-07-09 · TA获得超过1397个赞
知道小有建树答主
回答量:676
采纳率:100%
帮助的人:622万
展开全部
你在iframe中调用父窗口的foo2,那么你在父窗口中调用iframe中的foo1,应该是这样:
document.all("Iframe的ID").contentWindow.foo1();
追问
没有用parent调用iframe
是想在iframe中调用父中的jquery内函数
window.parent.foo1();这个foo1只能是非jquery函数,是这个问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fireboyz2005
2012-07-09 · TA获得超过707个赞
知道小有建树答主
回答量:395
采纳率:0%
帮助的人:242万
展开全部
foo1不可以放在ready外吗?
------------------------------------
不可以试试这样:
var myf = $(document).ready(function(){
return function foo1(){
alert(123);
}
});
function foo2(){
myf();

}
追问
我看你的代码,也是是独立出来,我的这个foo2比较复杂,foo2调用了兄弟层的foo3 foo4
我给写下这样,你就明白了
jQuery(function($){
var tmp;
function foo2(){
tmp = foo3();
}
function foo3(){
//foo4()....
return 1;
}
}//end
function foo1(){
foo2();
}
你这种方式可行,我评估一下可以满足要求,但就是报错了,说myf() is not a funtion

难道不能这样赋值?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式