在我的模态窗口中,我有一个“继续”按钮。虽然我可以通过使用simplemodal-close类分配按钮来关闭模式,但我无法调用我的函数。我已经从网站上的简单演示中汇总了这段代码。
按钮:
<a href="#" class="simplemodal-close" onClick="closePopup()"><img src="bell/images/button_understand.gif" width="116" height="49"></a>
javascript:
$(document).ready(function() {
function showPopups(){
var e = document.getElementById('hirpopup');
$('#hirpopup').modal({
opacity:80,
overlayCss: {backgroundColor:"#fff"}
});
e.style.display = 'block';
return false;
}
function closePopup(){
var e = document.getElementById('hirpopup');
e.style.display = 'none';
confirm(function () {
sameWindow(this.form);
});
}
function confirm(callback) {
$('#hirpopup').modal({
onShow: function () {
var modal = this;
// call the callback
if ($.isFunction(callback)) {
callback.apply();
}
}
});
}
});
任何想法,因为我对jQuery很陌生,对simplemodal来说是全新的。
编辑:我已经按照以下方式更新了我的javascript,但它还没有完成我的功能。我得到了1的警报,以及包含该功能的警报,但没有别的。$(document).ready(function(){
$("#close").css("cursor", "pointer");
$('#next').click(function(){
var e = document.getElementById('hirpopup');
$('#hirpopup').modal({
opacity:80,
overlayCss: {backgroundColor:"#fff"}
});
e.style.display = 'block';
return false;
});
$('#close').click(function(){
var e = document.getElementById('hirpopup');
e.style.display = 'none';
confirm(function () {
sameWindow(this.form);
});
});
});
function confirm(callback) {
alert("1");
alert(callback);
$('#hirpopup').modal({
onShow: function () {
alert("2");
var modal = this;
// call the callback
if ($.isFunction(callback)) {
alert("3");
callback.apply();
}
}
});
}
答案 0 :(得分:1)
编辑:您可以尝试在document.ready中放置确认方法。这可能是一个问题
你不能在你自己的函数中有$(document).ready,但它应该是root方法。还使用jQuery事件绑定
$(document).ready(function() {
$('.simplemodal-close').click({
var e = document.getElementById('hirpopup');
e.style.display = 'none';
confirm(function () {
sameWindow(this.form);
});
});
});
答案 1 :(得分:0)
你的功能中不能有$(document).ready(function(){})
。它只在页面加载时自动执行一次。
改为写
function closePopup(){
var e = document.getElementById('hirpopup');
e.style.display = 'none';
confirm(function () {
sameWindow(this.form);
});
}