gpt4 book ai didi

javascript - 尝试循环一个函数以在多个元素上运行 - jQuery

转载 作者:行者123 更新时间:2023-11-29 23:45:34 25 4
gpt4 key购买 nike

我正在尝试让这个 jQuery 视差代码工作,但我不想把所有东西都弄成意大利面条。如何循环应用到多个元素ID?

(它不适用于类,因为该函数需要针对每个特定的 div 运行多次)- 在循环方面我不是很好,仍在学习如何做这些事情。

无论如何,这是一个部分的功能代码(一个带有子 div 的 div,在本例中为#about > #pAbout):

$(document).ready(function() {
if ($("#pAbout").length) {
parallax();
}
});

$(window).scroll(function(e) {
if ($("#pAbout").length) {
parallax();
}
});

function parallax(){
if( $("#pAbout").length > 0 ) {
var plxBackground = $("#pAbout");
var plxWindow = $("#about");

var plxWindowTopToPageTop = $(plxWindow).offset().top;
var windowTopToPageTop = $(window).scrollTop();
var plxWindowTopToWindowTop = plxWindowTopToPageTop - windowTopToPageTop;

var plxBackgroundTopToPageTop = $(plxBackground).offset().top;
var windowInnerHeight = window.innerHeight;
var plxBackgroundTopToWindowTop = plxBackgroundTopToPageTop - windowTopToPageTop;
var plxBackgroundTopToWindowBottom = windowInnerHeight - plxBackgroundTopToWindowTop;
var plxSpeed = 0.35;

plxBackground.css('top', - (plxWindowTopToWindowTop * plxSpeed) + 'px');
}
}

我希望创建一个这样的数组:

var ids = ['#pAbout', '#pConcept', '#pBroadcast', '#pDigital', '#pDesign', '#pContact'];

但不幸的是,我无法让电子商务正常运作,这让我非常沮丧。任何帮助将不胜感激!

最佳答案

您可以在 jQuery 中使用多个选择器来选择不同的元素,只需在选择器之间使用逗号即可。

 $("#pAbout, #pConcept, #pBroadcast, #pDigital, #pDesign, #pContact")
.each(function(){
//manipulate element here
});

each() 遍历所有匹配的元素,因此无需检查长度等。

关于javascript - 尝试循环一个函数以在多个元素上运行 - jQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44296440/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com