点击即可切换 div
click away to toggle a div
我正在制作一个带有滑出式搜索框的 wordpress 主题。我想 hide/toggle 点击离开搜索框。这是我的 javascript
jQuery(document).ready(function($){
$("#flip").click(function(){
$("#searchbox").toggle("slide", { direction: "right" }, 500);
});
$("#flip2").click(function(){
$("#searchbox").toggle("slide", { direction: "right" }, 500);
});
});
jQuery('body').on('click', function(e){
{
$("#searchbox").toggle("slide", { direction: "right" }, 500);
});
jQuery('#searchbox').click(function(e)
{
e.stopPropagation();
});
尝试此操作时出现意外的令牌错误。感谢您的帮助
您可以通过 window.onclick
事件来完成:
(您没有 post 任何 HTML 代码,所以这只是一个使用它的例子)
var yourbox = document.getElementById('yourbox');
window.onclick = function(event) {
if (event.target == yourbox) yourbox.style.display = "none";
}
如果这是完整代码,则错误是由您在此函数中的额外“{”字符引起的:
jQuery('body').on('click', function(e){
{
$("#searchbox").toggle("slide", { direction: "right" }, 500);
});
您应该删除多余的 {
jQuery('body').on('click', function(e){
$("#searchbox").toggle("slide", { direction: "right" }, 500);
});
也就是说,此逻辑可能不适用于您尝试执行的操作,但这可能是意外的令牌错误。
这段代码应该可以工作-
jQuery(function() {
jQuery('#flip').click(function() {
jQuery("#searchbox").toggle("slide", { direction: "right" }, 500);
return false;
});
});
jQuery(document).click(function() {
jQuery("#searchbox").hide("slide", { direction: "right" }, 500);
});
jQuery("#searchbox").click(function(e) {
e.stopPropagation();
});
这里是 jsfiddle 为了您的目的和 wordpress
我稍作了改动
我正在制作一个带有滑出式搜索框的 wordpress 主题。我想 hide/toggle 点击离开搜索框。这是我的 javascript
jQuery(document).ready(function($){
$("#flip").click(function(){
$("#searchbox").toggle("slide", { direction: "right" }, 500);
});
$("#flip2").click(function(){
$("#searchbox").toggle("slide", { direction: "right" }, 500);
});
});
jQuery('body').on('click', function(e){
{
$("#searchbox").toggle("slide", { direction: "right" }, 500);
});
jQuery('#searchbox').click(function(e)
{
e.stopPropagation();
});
尝试此操作时出现意外的令牌错误。感谢您的帮助
您可以通过 window.onclick
事件来完成:
(您没有 post 任何 HTML 代码,所以这只是一个使用它的例子)
var yourbox = document.getElementById('yourbox');
window.onclick = function(event) {
if (event.target == yourbox) yourbox.style.display = "none";
}
如果这是完整代码,则错误是由您在此函数中的额外“{”字符引起的:
jQuery('body').on('click', function(e){
{
$("#searchbox").toggle("slide", { direction: "right" }, 500);
});
您应该删除多余的 {
jQuery('body').on('click', function(e){
$("#searchbox").toggle("slide", { direction: "right" }, 500);
});
也就是说,此逻辑可能不适用于您尝试执行的操作,但这可能是意外的令牌错误。
这段代码应该可以工作-
jQuery(function() {
jQuery('#flip').click(function() {
jQuery("#searchbox").toggle("slide", { direction: "right" }, 500);
return false;
});
});
jQuery(document).click(function() {
jQuery("#searchbox").hide("slide", { direction: "right" }, 500);
});
jQuery("#searchbox").click(function(e) {
e.stopPropagation();
});
这里是 jsfiddle 为了您的目的和 wordpress
我稍作了改动