我有一个非常基本的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
}