我试图在点击时显示div。应该发挥魔力的功能是:
$(document).ready(function showGogoasa() {
$('.gogoasa-newsletter').show();
});
不幸的是,它什么也没做。这让我头疼了好几个小时,因为我过去做过这样的小事,而且他们工作了。我试图在客户的网站上进行此修改。
当我检查firebug控制台时,它会说: ReferenceError:showGogoasa未定义
我试图在Google上查找此类错误,但类似的案例却因未声明变量而出现此类问题。好吧,我没有任何变数。
答案 0 :(得分:4)
我试图在点击时显示div。
您的代码正在 ready 事件上运行该函数,并且不会提供您描述的错误。
据推测(如果你提供了一个完整的测试用例会有所帮助)你也试图将函数绑定为一个单击处理程序,但你不能这样做,因为你已经使用函数表达式而不是函数声明(因此它不会在其自己的作用域之外创建名为showGogoasa
的变量)。
单独定义函数,然后分配调用并将其绑定为ready事件上的click事件处理程序。
$(document).ready(function ready_handler() {
function showGogoasa() { // Define it as a variable in the current scope
$('.gogoasa-newsletter').show();
}
showGogoasa(); // call it now
$("button").on("click", showGogoasa); // call it then
});
好吧,我没有任何变数。
那就是问题:)
函数是第一类对象,当您说showGogoasa()
时,表示“获取showGogoasa
的值并将其称为函数”。
答案 1 :(得分:0)
$(document).ready(function() {
$('#idOfYourClickerElement').on('click', function(){
$('.gogoasa-newsletter').show();
});
});
答案 2 :(得分:0)
使用jsfiddle或提供更多代码会有所帮助。
一个问题是您缺少点击事件处理程序。例如,当用户点击X时,Y应该发生/显示。以下简单示例可帮助您了解其工作原理:
http://jsfiddle.net/fionaredmond/1vbagj12/
$(document).ready(function(){
$("#showGogoasa").click(function(){
$(".gogoasa-newsletter").show();
});
});