javascript - 放大的弹出对象

标签 javascript jquery magnific-popup

华丽的弹出窗口

我使用 Magnific Popup,一个类似 jQuery 灯箱的插件。我尝试使用内置对象来获取属性。

它没有按照我想象的方式工作。我在这里阅读了 API:

http://dimsemenov.com/plugins/magnific-popup/documentation.html#api

到目前为止我尝试过的

我在控制台中获取了该对象,但无法从中获取属性。 (jquery Ready 看起来有点不同(别名),因为它在 WordPress 中使用)

<script>
jQuery(document).ready(function($) {
    $('.image-link').magnificPopup({
        type:'image',
            callbacks: {
                open: function() {
                    var magnificPopup = $.magnificPopup.instance;
                    console.log(magnificPopup.currItem);
                    window.location.hash = $(magnificPopup.currItem).attr('data-slug');
                    }
            }
    });
});
</script>
<a href="http://www.someimage.com/image.png" data-slug="my-slug">

自己的想法

  • 这不是像 $(this) 这样的对象,并且不会以相同的方式工作?
  • 我叫错了?
  • 我使用了错误的对象来解决此问题?

问题

如何正确完成?

最佳答案

currItem 是一个 Magnific Popup 数据对象,它不是 DOM 元素。该对象包含有关打开的元素的数据 - 图像路径、是否已加载的标志等

您可以通过$.magnificPopup.instance.currItem.el访问打开弹出窗口的DOM元素。

此外,如果您从 open 回调执行代码,则可以使用 this 而不是 $.magnificPopup.instance:

this.currItem.el

关于javascript - 放大的弹出对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17110528/

相关文章:

javascript - 在 jQuery 中检索复选框的 bool 状态?

javascript - 光标远离javascript图表的工具提示

iPad 上的 jQuery 现场事件...为什么不起作用?

css - 如何使用 Magnific Popup 的 open() 方法放大图像

javascript - 尝试发送数据时,放大的弹出页面恢复为原始格式

node.js - Javascript命名函数表达式,引用错误

javascript - 从 neo4j rest API 创建 json 的正确方法

c# - 如何通过uploadcare中的rest api删除文件

javascript - <a> (href) 的默认行为由其子项继承?