我对 JS 很陌生,虽然很享受,但我发现很难获得正确的语法。
我想用我自己的版本自定义我的警告框,这似乎很容易。我在这里找到了一个简洁的教程并成功运行了它,做了一些样式设计,发现它不是很适合移动设备。
主要问题源于代码的两部分,此处为 CSS:
#dialogbox {
display: none;
position: fixed;
background: #0b6623;
border-radius: 7px;
width: 550px;
z-index: 2001;
}
首先,对话框设置为 550px,这在大屏幕上没问题。当您运行设置对话框位置的脚本时,会出现真正的问题:
function CustomAlert(){
this.render = function(dialog){
let winW = window.innerWidth;
let winH = window.innerHeight;
let dialogoverlay = document.getElementById('dialogoverlay');
let dialogbox = document.getElementById('dialogbox');
dialogoverlay.style.display = "block";
dialogoverlay.style.height = winH+"px";
dialogbox.style.left = (winW/2) - (550 * .5)+"px";
dialogbox.style.top = "100px";
dialogbox.style.display = "block";
document.getElementById('dialogboxhead').innerHTML = '<strong>Share your score to Facebook</strong>';
document.getElementById('dialogboxbody').innerHTML = dialog;
document.getElementById('dialogboxfoot').innerHTML = '<button class="btn btn-danger" onclick="Alert.ok()"><i class="far fa-times-circle"></i> Close</button>';
}
this.ok = function(){
document.getElementById('dialogbox').style.display = "none";
document.getElementById('dialogoverlay').style.display = "none";
}
}
let Alert = new CustomAlert();
那里有线将框直接设置到屏幕的中心。
我的问题是 - 我仍然想要中心屏幕,但我希望对话框流畅并缩小到手机上的大小。有没有人对如何使用该 CSS 执行此操作有建议?
完整脚本可在此处获得:https://www.developphp.com/video/JavaScript/Custom-Alert-Box-Programming-Tutorial
慕哥9229398
相关分类