javascript - 通过 JavaScript 打开 UIKit 模式

标签 javascript modal-dialog getuikit

我正在使用 UIKit 框架,它们的模式如下所示:

<div id="modal-id" uk-modal>
    <div class="uk-modal-dialog">
        <button class="uk-modal-close-default" type="button" uk-close></button>
        <div class="uk-modal-header">
            <h2 class="uk-modal-title">Modal Title</h2>
        </div>
        <div class="uk-modal-body">
            <p>Lorem ipsum dolor sit amet</p>
        </div>
        <div class="uk-modal-footer uk-text-right">

            <button class="uk-button uk-button-primary" type="button">Ok</button>
        </div>
    </div>
</div>

通过按钮可以正常打开:

<a id='open-modal' uk-toggle="target: #modal-id" href="#">Open</a>

我想将其链接到按键,因此当按下 H 时,它会切换模式:

document.body.onkeyup = function(e){
    if(e.keyCode === 72){
        console.log('H key pressed');
         // Toggle Modal
    }
}

我在模式按钮 id 上使用 .trigger('click') 与 Bootstrap 一起工作,但它不适用于 UIKIT

最佳答案

所以基本上你需要用 Javascript 触发模式。 documentation 中对此进行了描述。

document.body.onkeyup = function(e){
    if(e.keyCode === 72){
        console.log('H key pressed');
        // Toggle Modal
        UIkit.modal('#modal-id').toggle(); //you can use toggle or open here
    }
}
<!-- UIkit CSS -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/uikit/3.0.3/css/uikit.min.css" />

<!-- UIkit JS -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/uikit/3.0.3/js/uikit.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/uikit/3.0.3/js/uikit-icons.min.js"></script>

<div id="modal-id" uk-modal>
    <div class="uk-modal-dialog">
        <button class="uk-modal-close-default" type="button" uk-close></button>
        <div class="uk-modal-header">
            <h2 class="uk-modal-title">Modal Title</h2>
        </div>
        <div class="uk-modal-body">
            <p>Lorem ipsum dolor sit amet</p>
        </div>
        <div class="uk-modal-footer uk-text-right">

            <button class="uk-button uk-button-primary" type="button">Ok</button>
        </div>
    </div>
</div>

<a id='open-modal' uk-toggle="target: #modal-id" href="#" class="uk-button uk-button-primary">Open</a>

关于javascript - 通过 JavaScript 打开 UIKit 模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54757324/

相关文章:

javascript - 写入带有现有换行符的文件

javascript - 类型转换和函数签名

css - Uikit 3.1.6 中的响应式导航栏

html - 我的个性化 css 影响 uikit.css 在导航光标上的工作

javascript - 如何查找文档事件

javascript - 如何确保我使用最新的 Promise()

javascript - AngularJS 模式允许与背景交互

javascript - 在提交表单上打开模式 Bootstrap

html - 使模式中的行可点击

javascript - uikit 3 捕获事件