通过 JavaScript 打开 UIKit 模式
Opening a UIKit modal through JavaScript
我正在使用 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>
我想link这是一个按键,所以当按下 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>
function addPage() { UIkit.modal($('#page-modal')).show();}
<!-- UIkit CSS -->
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/uikit/3.0.3/css/uikit.min.css" />
<script src="https://code.jquery.com/jquery-3.5.1.min.js" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>
<!-- 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="page-modal" 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 href="javascript:void(0)" id="create-new-page" onclick="addPage()" class="uk-button uk-button-primary">Open</a>
我正在使用 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>
我想link这是一个按键,所以当按下 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>
function addPage() { UIkit.modal($('#page-modal')).show();}
<!-- UIkit CSS -->
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/uikit/3.0.3/css/uikit.min.css" />
<script src="https://code.jquery.com/jquery-3.5.1.min.js" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>
<!-- 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="page-modal" 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 href="javascript:void(0)" id="create-new-page" onclick="addPage()" class="uk-button uk-button-primary">Open</a>