模态上的输入/注册字段不起作用
Input/ signup field on modal not working
我正试图在模态上添加一个注册/输入字段,但每次我点击输入字段时,它都会关闭模态
$(document).ready(function(){
$(".button a").click(function(){
$(".overlay").fadeToggle(200);
$(this).toggleClass('btn-open').toggleClass('btn-close');
});
});
$('.overlay').on('click', function(){
$(".overlay").fadeToggle(200);
$(".button a").toggleClass('btn-open').toggleClass('btn-close');
open = false;
});
http://codepen.io/kingatron/pen/qZLmjQ
如何修改jquery以便仍然可以使用输入字段?
单击覆盖时,请检查是否将input
作为目标。
$('.overlay').on('click', function(e){
if(e.target.id != "mce-EMAIL") {
$(".overlay").fadeToggle(200);
$(".button a").toggleClass('btn-open').toggleClass('btn-close');
open = false;
}
});
这将检查如果您在覆盖上的input
内部单击,则不会发生不切换覆盖的单击操作。
请参阅这支钢笔。
您的事件从您单击的元素开始,一直到您单击的位置下方的元素dom树。因此
$('.overlay').on('click', function(){...});
处理程序正在启动,并关闭覆盖。
如果在函数定义中添加一个参数,则可以检查事件的目标,以识别被点击的顶部元素
$('.overlay').on('click', function(){
// check el.target to identify the element clicked on
// to determine whether the overlay should be shown
// if the element isn't the overlay div
if (el.target != this)
{
// exit and return false to prevent the event from bubbling
return false;
}
// otherwise hide the overlay...
$(".overlay").fadeToggle(200);
$(".button a").toggleClass('btn-open').toggleClass('btn-close');
open = false;
});
我更改了$(".overlay").fadeTogle(200);至$(".button a").fadeToggle(200);然后更改html中的输入类型。感谢您花时间查看我关于的问题
相关文章:
- 将输入字段中的文本提交到我的数据库,同时将其添加到我的列表中
- 而循环只设置php中输入字段中的第一个值
- 在输入字段中将最小金额设置为
- 从Rally获取一个特定的标记,以便计算另一个字段中的值
- 如何在输入字段中的按钮的帮助下打开日历,该字段的类型为“=”;日期”;
- JavaScript 检查隐藏字段中的值并将其设置为隐藏字段值
- 在wordpress一定时间后更改自定义字段
- 如何在HTML输入字段中添加不可删除的后缀
- 模态上的输入/注册字段不起作用
- 将值分配给页面客户端脚本中的已注册隐藏字段
- 如何注册Javascript函数以查找隐藏字段值何时更改
- 添加注册名称字段的验证
- 无法使用自定义字段验证注册插件
- 如何在所有字段为true后激活注册按钮
- 有什么方法可以让我自动填写这个注册页面上的字段吗
- Facebook注册-隐藏字段不返回数据
- Facebook注册插件在自定义字段不工作
- JavaScript if语句没有在复选框字段中注册
- 输入字段未注册焦点事件
- JavaScript数独ID字段未注册