Javascript 如果身体等级等于X,那么做些什么?
我使用外部脚本为站点上的每个页面运行图像滑块Javascript 如果身体等级等于X,那么做些什么?,javascript,jquery,Javascript,Jquery,我使用外部脚本为站点上的每个页面运行图像滑块 $(document).ready(function() { $("#slideshow").show(); $('#slider1').anythingSlider({ buildNavigation: false, delay: 8000 }) 在其中一个页面上,我不希望图像滑块自动旋转,因此我需要添加一个额外的变量。我在页面的主体上添加了一个类,并希望按照以下内容做一些事情 如果正文中有一个“partnerCh
$(document).ready(function() {
$("#slideshow").show();
$('#slider1').anythingSlider({
buildNavigation: false,
delay: 8000
})
在其中一个页面上,我不希望图像滑块自动旋转,因此我需要添加一个额外的变量。我在页面的主体上添加了一个类,并希望按照以下内容做一些事情
如果正文中有一个“partnerCharitiesDetail”类,则运行此脚本而不是通用脚本
这是我在下面尝试过的(没有成功)。我有两个问题真的
1) 当有两个相同的脚本运行时(如本例),jQuery会发生什么情况?它会用新脚本覆盖旧脚本吗
2) 我哪里出错了?!我的方法是最好的方法吗
$(document).ready(function() {
$("#slideshow").show();
$('#slider1').anythingSlider({
buildNavigation: false,
delay: 8000
})
if ($('body.partnerCharitiesDetail').length > 0){
$('#slider1').anythingSlider({
buildNavigation: false,
delay: 8000,
startStopped: false
})
}
谢谢
if ($('body').hasClass('partnerCharitiesDetail')) {
...
我建议:
$("#slideshow").show();
var options = {
buildNavigation: false,
delay: 8000
};
if ($('body').hasClass('partnerCharitiesDetail')) {
options.startStopped = false;
}
$('#slider1').anythingSlider(options);
你看过吗
所以你可以说
if($("body").hasClass("partnerCharitiesDetail"))
{
}
else
{
}
使用hasClass()
方法检查元素是否具有特定的类
此外,您的代码有点重复(甚至可能导致任何东西滑块运行两次)-我将这样编写:
$(document).ready(function() {
// Initialize options first
var options = {
buildNavigation: false,
delay: 8000
};
// Only disable startStopped if the body has this class
if ($('body').hasClass('partnerCharitiesDetail')) {
options.startStopped = false;
}
// Show the #slideshow element and start the slideshow
$('#slideshow').show();
$('#slider1').anythingSlider(options);
});
试试这个 if($("body").isClass(".partnerCharitiesDetail")) { //code if body has specific class name } else { //code if body has no specific class name } if($(“body”).isClass(.partnerCharitiesDetail”)){ //如果主体具有特定的类名,则编码 } 否则{ //如果主体没有特定的类名,则编码 }
行为取决于您使用的anythingSlider插件的工作方式。如果插件需要重新初始化某个元素,那么第二次初始化将覆盖前一次初始化,但更可能的情况是,您会真正弄乱DOM并获得双倍的事件侦听器等 正如所指出的,检查某个对象是否有类的正确方法是.hasClass(“classname”) 虽然在这种特殊情况下我会
$('#slider1').anythingSlider({
buildNavigation: false,
delay: 8000,
startStopped: !($("body").hasClass("partnerCharitiesDetail"))
})
也许还可以为未来的探险家添加一条评论。他不是在问如何将
startstop
与任何东西一起使用。他在问如何检查身体等级。我想我明白你的意思了。谢谢你纠正我的错误,太好了!这是完美的工作,是一个干净得多,更有意义。谢谢我猜我的线索在黑体字“有一门课”!
$('#slider1').anythingSlider({
buildNavigation: false,
delay: 8000,
startStopped: !($("body").hasClass("partnerCharitiesDetail"))
})