长期以来,我在主题选项页面中成功使用了以下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时间胶囊备份也无法解决问题。
问题是,如果我把超时时间:5000改为(以前是可能的)timeout:2000或任何其他值,这条信息不会再消失,需要很长时间才能显示出来。
有人知道这可能是什么吗?
我甚至尝试了一个选项页面的草稿版本。
它突然停止工作,甚至浏览器交叉,会有什么问题?
我也尝试了MAMP Restar,新鲜的文件夹,新鲜的安装。。。
我真的希望有人能帮我把这里:)
尝试将setTimeout("jQuery('#saveMessage').hide('slow');", 5000);
更改为setTimeout(function() { jQuery('#saveMessage').hide('slow'); }, 5000);