jQuery操作仅一次/自定义URL



我有一个非常基本的jQuery脚本,它在页面加载后从下到上滑动标题。我现在遇到的问题是,如果用户在"主页"上,我需要将此标题设置为仅幻灯片。如果用户点击任何子页面,我需要标题保持在页面顶部。

示例:wordpress网站上有几个我有画廊的页面。当用户输入页面->动画标题时。当用户浏览图库->静态标题时。

这是jQuery脚本:

jQuery(document).ready(function () {
jQuery(".animate").addClass("move"); 
});

你可以在这里看到有问题的网站。

//稍后编辑:感谢大家的帮助!我忘了提我有多个网址,有多个页面。有没有办法我可以获得页面的"当前URL",然后在其上附加一个始终相同的额外位,即/?pid=xx

示例:我需要使用以下格式在页面上设置标题动画:

mywebpage/custom_name/

然后,在这种格式的页面上,我需要保持标题不变:

mywebpage/custom_name/?pid=xx

根据下面的答案,我制作了这个脚本:

if(window.location.href == 'http://www.noahd.net/demo-upwall/residential/rooftop-garden/'){
jQuery(document).ready(function () {
jQuery(".animate").addClass("move"); 
});
} else {
jQuery(document).ready(function () {
jQuery(".portfolio-title-wrap").removeClass("animate").addClass("top"); 
}); 
}

此脚本仅适用于/residential/rooftop-garden/页面。在residential下,我还有10页。然后我有另外6个从根开始的页面,比如/commercial//objects,它们也有6-10个子页面。

我如何调整上面的脚本以在这些页面和子页面上工作,而不是在子页面上?

您可以根据url决定页面的行为。

代码:

if(window.location.href== mainapplicationurl){
// slide code
}
else{
// put title on top
}

问题编辑后。您可以根据url中的"/"计数来决定页面(只有在url格式一致的情况下才能工作)。

var count = window.location.href.split("/").length;
jQuery(document).ready(function () {
if( count < 7 ){        
jQuery(".animate").addClass("move"); 
} else {        
jQuery(".portfolio-title-wrap").removeClass("animate").addClass("top"); 
}
});

Wordpress用唯一的类标记页面,这样您就可以针对特定的页面,如下所示:

jQuery(document).ready(function () {
jQuery(".page-id-32 .animate").addClass("move"); 
});

您可以用不同的方式来完成。例如,您只能在使用wordpress条件的特定页面上加载幻灯片标题内容。

或者您可以从客户端执行您想要的操作。例如,您的页面有不同的标题标签,主页面有-Upwall Studio,您可以检查:

if ($('title').text() === 'Upwall Studio') {
//slide youre title here
}

或者,您可以通过window.locationhref:检查用户是否在特定的url上

if (window.location.href === 'http://www.noahd.net/demo-upwall/') {
//slide youre title here
}

最新更新