我在主题选项页面中成功使用了以下JavaScript函数。 它确实通过JavaScript保存WP主题选项,并在保存后在屏幕上显示消息。
突然间,如果我更改了超时设置(值),则该消息根本不显示,或者显示但不再隐藏。
这是我的JavaScript:
<!--Include AJAX save message + styles-->
<div id="saveResult"></div>
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery('#myOptionsForm').submit(function() {
jQuery(this).ajaxSubmit({
success: function(){
jQuery('#saveResult').html("<div id='saveMessage'class='successModal'></div>");
jQuery('#saveMessage').append("<p><?php echo htmlentities(__('Settings Saved Successfully','wp'),ENT_QUOTES); ?></p>").show();
}, timeout: 5000
});
setTimeout("jQuery('#saveMessage').hide('slow');", 5000);
return false;
});
});
</script>
这是相应的CSS:
.successModal {
display: block;
position: fixed;
top: 35%;
left: 20%;
border-radius: 50% !important;;
width: 123px;
height: 153px;
padding: 5px 20px;
background-image: url("Smile-success.png");
z-index:1002;
overflow: auto;
background-position: center center;
background-repeat: no-repeat;
-moz-border-radius: 15px;
-webkit-border-radius: 15px;
-moz-box-shadow: 5px 5px 10px #cfcfcf;
-webkit-box-shadow: 5px 5px 10px #cfcfcf;
}
这一切都非常好用,直到我将整个主题上传到GitHub,然后再回到我的电脑。
此后,即使MAC Time Capsule Backup也解决了这个问题。
问题,如果我更改超时:5000到(之前可能) 超时:2000或任何其他值, 消息des不再消失,需要很长时间才能显示出来。
有没有人知道这可能是什么?
我甚至试过了一个临时版的选项页面。
它可能会突然停止工作,甚至是浏览器交叉?
我还尝试了MAMP Restar,新文件夹,全新安装...
我真的希望有人可以帮我把它放在这里:)
答案 0 :(得分:3)
尝试将setTimeout("jQuery('#saveMessage').hide('slow');", 5000);
更改为setTimeout(function() { jQuery('#saveMessage').hide('slow'); }, 5000);