我正在尝试捕获我的表单的提交按钮按下,如果表单已提交,页面刷新,我会显示一些隐藏的字段.我想捕获表单是否已经提交之前,如果它是在重新加载时提交的,我想取消隐藏隐藏的字段.我试图使用全局变量来实现这一点,但是我无法使其正常工作.
这是我尝试过的:
var clicked = false;
$(document).ready(function() {
$("input[type='submit'][value='Search']").attr("onclick", "form.act.value='detailSearch'; clicked = true; return true;");
if (clicked == true) {
// show hidden fields
} else {
// don't show hidden fields
}
});
Run Code Online (Sandbox Code Playgroud)
有关此代码有什么问题的任何建议吗?
主要目标是保持非刷新的logotext <div class="small-7 medium-4 columns logo">和菜单<nav class="pagedMenu" role="navigation">,而不会在页面刷新时剪切或在内容从页面加载到另一页面时.此外,菜单状态应从页面保留到另一页.
我在这里找到了一个可以解决问题的可能解决方案(您可以使用ajax获取更新的内容并使用jQuery将新内容放在页面上并完全避免刷新.这样做,现有的数据在页面将保持不变.说@ jfriend00)
所以,我试图使用Ajax插件(称为AWS).在AWS选项页,我(想),我已经做了指向正确的事wrapper作为阿贾克斯容器ID,也pagedMenu作为菜单的容器类,过渡效果已启用,没有AJAX容器ID空白,没有选择的装载机,其已经是一个脉冲装载机实现在主题中.
在这一点上,我得到的是菜单/侧面菜单(shiftnav)/脉冲点加载器/内容加载故障,可能是由错误定义的Ajax容器ID和/或菜单容器类(?)产生的,或者是由于与现有JS/ jQuery代码,不太确定.
此外,在Chrome控制台中还有一个错误:
Uncaught SyntaxError: Unexpected token ;
(anonymous function) @ ajaxify.js?ver=4.3.1:175
n.extend.each @ jquery-2.1.4.min.js?ver=2.1.4:2
n.fn.n.each @ jquery-2.1.4.min.js?ver=2.1.4:2
$.bind.$.ajax.success @ ajaxify.js?ver=4.3.1:169
n.Callbacks.j @ jquery-2.1.4.min.js?ver=2.1.4:2
n.Callbacks.k.fireWith @ jquery-2.1.4.min.js?ver=2.1.4:2
x @ jquery-2.1.4.min.js?ver=2.1.4:4
n.ajaxTransport.k.cors.a.crossDomain.send.b @ jquery-2.1.4.min.js?ver=2.1.4:4
Run Code Online (Sandbox Code Playgroud)
在页面刷新时,一切都恢复正常,但根本没用,没用.
我还要提到,对于菜单,我试图使用jQuery-Storage-API来保持状态,storage=jQuery.sessionStorage;正如你在mynewmenu.js文件中看到的 …
我有以下代码片段,并想知道是否有可能更新它实现此菜单行为:
步骤1.鼠标悬停Link 1 ---->它将被翻译为1.5em(已设置);
步骤2.在链接1上单击---->菜单按钮将在页面重新加载的已翻译位置(完成,特别感谢@ guest271314)保持固定,直到单击新菜单按钮(未设置)然而)又加载了另一个页面.
注意:next/prev按钮代码部分保持不变(或者如果必须,可以编辑,以保持功能).
注意2:我必须提到,最终,解决方案将在wordpress中实现,而不是静态网站html页面.
$(function () {
$('nav ul li').click(function (e) {
//Set the aesthetics (similar to :hover)
$('nav ul li')
.not(".clicked").removeClass('hovered')
.filter(this).addClass("clicked hovered")
.siblings().toggleClass("clicked hovered", false);
}).hover(function () {
$(this).addClass("hovered")
}, function () {
$(this).not(".clicked").removeClass("hovered")
});
var pageSize = 4,
$links = $(".pagedMenu li"),
count = $links.length,
numPages = Math.ceil(count / pageSize),
curPage = 1;
showPage(curPage);
function showPage(whichPage) {
var previousLinks = …Run Code Online (Sandbox Code Playgroud)