jQueryUI 启用与关闭对话框窗口相关的链接
jQueryUI Enabling the link with respect of closing dialog window
我正在研究jQuery UI对话框,JS Fiddle供参考。如果您在单击关闭窗口(对话框)时观察到,则链接未启用,但是应根据相对窗口关闭启用链接。如何将关闭对话框窗口与相应的链接相关联并再次启用它?
$(function() {
function opener(params){
var _params = params;
for (var obj in _params){
dialogOpener(_params[obj]);
}
function dialogOpener(selector){
$('#'+selector.linkSelector).on('click', function(ev){
ev.preventDefault();
ev.stopPropagation();
var url = $(this).attr('href');
if ($(ev.target).hasClass('disabled')) {
return false;
} else{
$('#'+selector.moduleSelector).dialog({width: 800, position: 'top'}).load( url);
$(this).addClass('disabled');
}
});
}
}
opener([
{ linkSelector: 'google', moduleSelector: 'googleModule'},
{ linkSelector: 'facebook', moduleSelector: 'facebookModule'},
{ linkSelector: 'yahoo', moduleSelector: 'yahooModule'},
{ linkSelector: 'gmail', moduleSelector: 'gmailModule'}
]);
});
尝试添加一个事件,该事件在初始化对话框时触发,以重新启用链接。例如,您的对话框打开器函数可能如下所示:
function dialogOpener(selector){
$('#'+selector.linkSelector).on('click', function(ev){
ev.preventDefault();
ev.stopPropagation();
var url = $(this).attr('href');
var selected = $(this);
if ($(ev.target).hasClass('disabled')) {
return false;
} else{
$('#'+selector.moduleSelector).dialog({
width: 800,
position: 'top',
close: function(event,ui) {
selected.removeClass('disabled');
}
}).load( url);
selected.addClass('disabled');
}
});
}
JSFiddle: http://jsfiddle.net/mobj45kt/2/
关闭事件的 jQuery 对话框 API:http://api.jqueryui.com/dialog/#event-close
相关文章:
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 重定向到父窗口中的链接
- 函数打开链接时不使用弹出窗口阻止程序
- 如何禁用鼠标中键单击超链接以在新选项卡或新窗口中打开
- 链接中有php变量的Javascript打开窗口
- 为在新窗口中打开外部链接创建异常
- 打开'选择文件'窗口单击锚链接(跳过单击'选择文件'按钮)
- 浏览器窗口中的应用内FB页面插件链接
- 传单:如何在弹出窗口中创建链接选择器
- SVG编辑链接获胜't在新窗口中打开
- 如何在网格视图中每次单击按钮或链接时打开不同的新弹出窗口
- 在聊天窗口中检测链接单击事件
- 具有双重功能的按钮:在_blank窗口中打开一个链接,再加上_self中的另一个链接
- 提交表单的可能性(左-/中-/在新选项卡或窗口中打开-)单击html链接
- 一个链接打开两个窗口
- 如何在指定的打开窗口中打开链接
- Sencha触摸,在新的浏览器窗口中打开网络链接
- 通过程序在窗口中打开一个外部URL,链接会附加到网站上
- jQuery-强制关闭外部链接窗口
- TinyMCE:如何手动显示添加/编辑链接窗口