使用JQuery函数减少重复代码

2023-12-10

在这里发现了一个很好的jquery弹出功能:

 JAVASCRIPT
 $(function() {
    $("#word1234").live('click', function(event) {
        $(this).addClass("selected").parent().append('
          <div class="messagepop pop">"Lorem ipsum dolor sit amet, 
          consectetur adipisicing elit, sed do eiusmod tempor incididunt</div>');
        $(".pop").slideFadeToggle()
        $("#email").focus();
        return false;
    });
    $(".close").live('click', function() {
        $(".pop").slideFadeToggle();
        $("#contact").removeClass("selected");
        return false;
    });


 HTML
 <a href='/word1234' id='word1234'>Supercalifragilisticexpialidocious</a>

有没有更有效的方法来调用这个弹出窗口?如果我在一个页面上有数百个定义,我就会重复很多看似不必要的代码。

如果我在本机 JS 中执行此操作,我只需为 href 标记设置一个 onClick 函数,例如

 <a href="#" id="word1234" onClick="doPop(this, 'Lorem ipsum, ect.')">Supercalifragilisticexpialidocious</a>

JQuery 中是否有类似的调用函数的方法?

EDIT经过一些调试后,可以在此处找到更新/修复脚本的工作版本:http://jsfiddle.net/N4QCZ/13/ hth.


您可以将代码变成jQuery 插件像这样:

$.fn.myPopup = function(popupText){
    var popupHtml = '<div class="messagepop pop">' + popupText + '</div>';
    this.each(function(){
        $(this).click(function(){

            // Create the popup
            $(this).addClass("selected").parent().append(popupHtml);

            // Find the close button and attach click handler
            $(this).find(".close").click(
                // Find, hide, then delete the popup
                $(this).closest(".pop").slideFadeToggle().remove();;
            );

        });
        return false;
    });

    return this;
};

那么你的代码将如下所示:

$("#word1234").myPopup("Lorem Ipsum");
$("#wordABCD").myPopup("Hello World");
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用JQuery函数减少重复代码 的相关文章

  • 将结果从 pdo 发送到 ajax 时遇到问题

    我想做的是 如果用户成功注册 pdo 将提供信息并将其发送到 ajax 如果用户注册与否 ajax 将发送消息 在我将这个条件放入我的 pdo 中后 它工作正常 现在它不会再插入 并且 ajax 告诉 注册用户时出错 每时每刻 script
  • $.each() 内的 setTimeout

    好的 所以我有这个代码 this find article loading each function i var el this setTimeout function el replaceWith dumpster article fi
  • 在 Woocommerce 的单个产品页面中添加产品注释字段

    我要创建定制订单备注 in 单品用户的详细信息页面 这个可以使用 php 来完成 无需插件 我已附上屏幕截图和网站 URL 以供参考 已尝试使用此代码function php它在结账页面上工作 而不是在产品信息页 任何人都可以帮助我实现这一
  • 在移动浏览器或 PhoneGap 应用程序之间进行检测

    是否可以使用 JavaScript 检测用户是否通过浏览器或应用程序进行访问 我正在通过网页和 PhoneGap 应用程序开发适用于多个移动操作系统的混合应用程序 目标是 独立于部署目标使用相同的代码 仅当用户代理是应用程序时添加 Phon
  • 这段 jquery 代码可以写得更短吗? (初学者)

    这是我第一次在 stackoverflow 上提问 所以如果我做错了什么请原谅我 我也是 jquery 的新手 但通过阅读和教程 我设法创建了一个工作示例 下面的代码是我创建的 这意味着我有三个带有可拖动需求的列表和三个可以删除需求的占位符
  • IE8 上 json 解析失败

    json gt 返回的响应 msg div p Unfortunately we were unable to process your application p br Please upload a CV br div status e
  • 在成功回调之前修改 JSONP 结果

    我想从外部服务加载一些 JSON 数据 然而 它提供 foo bar useful 而我真正关心的是 有用 的部分 我需要将那部分传递给success打回来 我正在尝试使用Deferred一次从多个数据源加载 类似this https st
  • jQuery 的 .each() 方法是并行还是顺序运行其语句?

    在我的 HTML 页面中 我有 4 个列表项和以下 jQuery 代码 li hide each function this delay 500 fadeIn 1000 我假设 each 函数内的语句将为第一个列表项运行 完成后为第二个列表
  • 如何使用 jquery 生成并附加随机字符串

    一般性 我想使用 jQuery 或 javascript 将随机字符串附加到元素的属性 规格 我需要引用 CDN 上的 CSS 文件 不幸的是 每次更新该 CSS 文件时 CDN 都会更改该文件的 URL 所以我不能简单地引用静态 URL
  • jquery 删除 标签,同时保留其内容(并用
    替换

    :s)

    有没有一种好方法可以删除所有 SPAN 标签 同时保留其中的文本 并用 BR 替换所有 DIV 和 P 使用 jQuery div p Lorem ipsum dolor sit amet consectetur adipiscing el
  • JQuery 找不到我的元素。为什么?

    更新 愚蠢的我没有注意到案例不准确 我为此苦苦挣扎了 30 多分钟 而你们在不到 5 分钟的时间里就看到了我的问题 感谢您为我节省了很多悲伤 无论如何 我对编程还是个新手 我需要学习如何留意这样的小事情 但非常感谢 它甚至没有闪过我的脑海
  • jQuery / javascript 缓存元素以提高效率?

    是的 所以我想常识是 对于您将要经常访问的元素 最好的方法是像这样缓存它们 var myEl myclass 然后你以后就可以访问 myEl 并且不需要再次搜索 DOM 对吗 好吧 假设我有一个相当复杂的 html 结构 我需要经常访问几个
  • 如何在按键时获得第一个选择(防止显示“添加书签”对话框)

    I have a checkbox in my jQuery application that you can check to duplicate a div I d like now to create a Ctrl D shortcu
  • 使用回退异步加载 jquery 核心

    通过标头中的性能优化和非阻塞脚本 我一直在尝试异步加载 jquery 本身 我遇到了一个jQuery 加载器 http www yterium net jQl an asynchronous jQuery Loader脚本 那个async加
  • 如何使用 jquery 验证这种格式 (yyyy-mm-dd) 的日期?

    我正在尝试验证以下格式的日期 yyyy mm dd 我找到了这个解决方案 但它的格式不符合我的需要 如 mm dd yyyy 这是该解决方案的链接 http jsfiddle net ravi1989 EywSP 848 http jsfi
  • 如何从 iframe 中设置 Chrome 打印对话框的默认文件名?

    我正在开发一个项目 我的部分项目是 iframe 中的仪表板 我有一个请求要提出just我正在处理的 iframe 可导出为 PDF 即 仅显示 iframe 内容 而不显示其周围的包装内容 我已经使用一些 jQuery 让它工作了 但是
  • 使用 jQuery 的 AJAX 请求不起作用

    所以我是 jQuery 的新手 我正在尝试设置一个带有选项卡的 html 页面 每个选项卡应显示不同的 html 页面 如下所示 div a href page1 html div class tabdiv tabActive Page1
  • JavaScript 承诺混乱

    我正在尝试理解 javascript Promise 的概念 但我遇到了一些问题 我在本地设置了一个非常小的Web服务 不要生气 该Web服务不符合约定 这里有一些关于它的细节 login
  • 在相同位置使用 jQuery 将列表框项目移动并删除到另一个列表框

    我有 2 个多选框 如本链接所示 http jsfiddle net bdMAF 38 http jsfiddle net bdMAF 38 function button1 click function list1 gt option s
  • 获取鼠标在滚动条上的位置

    当我向下滚动或向上滚动时如何获取鼠标位置 我试过这个 document mousemove function event captureMousePosition event scroll function event xMousePos

随机推荐