Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jqueryif语句、选择器_Javascript_Jquery_Html - Fatal编程技术网

Javascript jqueryif语句、选择器

Javascript jqueryif语句、选择器,javascript,jquery,html,Javascript,Jquery,Html,我刚刚开始使用jQuery,我需要做一些我不确定是否可行的事情。 我知道在jQuery上使用if语句与普通JavaScript类似,但我不知道如何在普通if语句上使用jQuery选择器 函数目前正在运行,但我有两个问题,我不知道如何解决(我假设它将使用if语句,但不知道如何解决) 一个问题是,在container1上不应该应用这个函数,只有两个图像,最大化和最小化,我才能显示和隐藏它 第二个问题是,图像是用来显示(当单击最大化时)和隐藏(当单击最小化时)下面的容器的,但是我使用的函数与最大化和最

我刚刚开始使用jQuery,我需要做一些我不确定是否可行的事情。 我知道在jQuery上使用if语句与普通JavaScript类似,但我不知道如何在普通if语句上使用jQuery选择器

函数目前正在运行,但我有两个问题,我不知道如何解决(我假设它将使用if语句,但不知道如何解决)

一个问题是,在container1上不应该应用这个函数,只有两个图像,最大化和最小化,我才能显示和隐藏它

第二个问题是,图像是用来显示(当单击最大化时)和隐藏(当单击最小化时)下面的容器的,但是我使用的函数与最大化和最小化函数(它们是普通的JavaScript,我希望使用jQuery)冲突

我希望能解释清楚。如果你有任何问题,请告诉我

代码如下所示

   <html>
    <head>
            <script type="text/javascript">
     $(document).ready(function(){
      $(".Header").click(function(){
      $(this).next(" .container").slideToggle("fast");
      });
       });
             </script>
    </head>
    <body>
     <table class="Header">
      <tr>
       <td>header1</td>
       <td><img alt="minimize" onclick="function to minimise container1"/>
        <img alt="maximize" onclick="function to maximize container1" /></td>
      </tr>
     <table>
     <div class="container>**Container1**</div>
     <table class="Header">
      <tr>
       <td>**header2**</td>
       <td><img alt="minimize" onclick="function to minimise container2"/>
       <img alt="maximize" onclick="function to maximize container2" /></td>
      </tr>
     <table>
     <div class="container>**Container2**</div>
     <table class="Header">
      <tr>
       <td>**header3**</td>
       <td><img alt="minimize" onclick="function to minimise container3"/>
       <img alt="maximize" onclick="function to maximize container3" /></td>
      </tr>
     <table>
     <div class="container>**Container3**</div>
    </body>
   </html>

$(文档).ready(函数(){
$(“.Header”)。单击(函数(){
$(this).next(.container”).slideToggle(“fast”);
});
});
校长1
**集装箱2**
**校长3**
这个怎么样:

$(function() {
    $(".Header:not(#Container1)").click(function(){
        var c = $(this).next(".container");
        c.slideToggle("fast");
    });
    $(".Header:not(#Container1)").toggle(
        function(){ $(this).next(".container").next("img").css('display', 'block'); },
        function(){ $(this).next(".container").next("img").css('display', 'none'); }
    );
});

关于if语句中的选择器,您只需像平常一样使用它们。唯一需要注意的是他们会返回什么

if ( $('#thing') )
如果存在
#thing
,则返回true

if ( $('#thing').hasClass('stuff') )
如果存在thing.stuff,则返回true

if ( $('#thing').text() == "Phil")
让jQuery返回
#thing
的文本,并将其与“Phil”进行比较


等等。只要想想你用jQuery掌握了什么,并相应地使用它。这些文档很有帮助。

把它分成两个问题怎么样?这两个问题是完全不同的,尽管它们影响相同的代码。对不起,我没有意识到,下次我会考虑这一点。谢谢,这非常接近,尽管我已经意识到滑动切换和显示之间的冲突:阻塞和无仍然存在。当容器显示为(display:block)时,单击“最大化”(maximize),将再次显示(滑动切换)容器,尽管它已经显示了,与“最小化”(minimize)相同。无论如何,非常感谢,因为它非常接近我所需要的。我明白了。在这种情况下,这可能会有所帮助:$(“.Header:not(#Container1)”)。单击(function(){var c=$(this).next(.container”);c.css('display','none');c.slideToggle(“fast”,function(){c.css('display','block');});感谢您的解释,它确实帮助我了解如何使用选择器和if语句。:-)