0

Can you let me know what is the problem with my code. I have given the code for all the sections belowie; the HTML/CSS & JQuery

When I click my go veg button the class fish should hide.

CSS file

div{
 display:inline;
 float:left;
 height:245px;
 text-align:left;
 border: solid #000 3px;
}

html file

<html>
 <head>
    <link rel="stylesheet"  type="text/css" href="file://c:/jquery/chapter-2/begin/styles/my_style.css"   />
    <script src="file://c:/jquery/chapter-2/begin/scripts/jquery.js"    type="text/javascript"></script>
    <script src="file://c:/jquery/chapter-2/begin/scripts/my_scripts.js" type="text/javascript"></script>
 </head>

<body>
<div class="topper">
    <h2>Our Menu</h2>
      <div class="buttons"><button type="submit" value="vegon">Go Vegetarian</button></div>
      <div class="buttons"><button type="submit" value="restoreme">Restore Menu</button></div>
</div>
<div class="middle">
<li>Thai-style Halibut
 <ul class="menu_list">
  <li                 >coconut milk</li>
  <li class="fish"    >pan-fried halibut</li>
  <li                 >lemongrass broth</li>
  <li                 >vegetables</li>
  <li                 >Thai spices </li>
 </ul>
</li>
<li>Braised Delight
 <ul class="menu_list">
  <li class="meat"    >lamb shoulder</li>
  <li                 >cippolini onions</li>
  <li                 >carrots</li>
  <li                 >baby turnip</li>
  <li                 >braising jus</li>
 </ul>
</li>
<li>House Grilled Panini
 <ul class="menu_list">
  <li class="meat"    >prosciutto</li>
  <li                 >provolone</li>
  <li                 >avocado</li>
  <li                 >cherry tomatoes</li>
  <li                 >sourdough roll</li>
  <li                 >shoestring fries </li>
 </ul>
</li>
<li>House Slider
 <ul class="menu_list">
  <li                 >eggplant</li>
  <li                 >zucchini</li>
  <li class="hamburger">hamburger</li>
  <li                 >balsamic vinegar</li>
  <li                 >onion</li>
  <li                 >carrots</li>
  <li                 >multigrain roll</li>
  <li                 >goat cheese</li>
 </ul>
</li>   <li>Frittata
 <ul class="menu_list">
  <li class="meat"    >eggs</li>
  <li                 >Asiago cheese</li>
  <li                 >potatoes </li>
 </ul>
</li>
<li>Coconut Soup
 <ul class="menu_list">
  <li                 >coconut milk</li>
  <li class="meat"    >chicken</li>
  <li                 >vegetable broth</li>
 </ul>
</li>
<li>Soup Du Jour
 <ul class="menu_list">
  <li class="meat"    >grilled steak</li>
  <li                 >mushrooms</li>
  <li                 >vegetables</li>
  <li                 >vegetable broth </li>
 </ul>
</li>
<li>Hot and Sour Soup
 <ul class="menu_list">
  <li                 >roasted pork</li>
  <li                 >carrots</li>
  <li                 >Chinese mushrooms</li>
  <li                 >chili</li>
  <li                 >vegetable broth </li>
 </ul>
</li>
<li>Avocado Rolls
  <ul class="menu_list">
  <li                 >avocado</li>
  <li                 >whole chiles</li>
  <li                 >sweet red peppers</li>
  <li                 >ginger sauce</li>
 </ul>
</li>
</div>
</body>
</html>

js file

$(document).ready(function() {
    $(".buttons").click(function(){
    $("li.fish").hide();
});
});
4

3 に答える 3

0

あなたのコードは問題ありません。おそらくjQueryがロードされていないと思います。ローカル参照を Google CDN ファイルに置き換えてみてください。

https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js

また、ローカルの js ファイルも読み込まれていることを確認する必要があります。あなたはいくつかの書籍の例に取り組んでいるように見えるので、リソースへの相対パスを使用することを検討してください。

Web ページが現在 にある場合はc:/jQuery/chapter-2/、ファイル参照に次を使用します。

<script src="begin/scripts/jquery.js"></script>
于 2012-04-27T20:52:04.343 に答える
0

すべてが大丈夫です。頭から次の行を置き換えるだけです

<script src="file://c:/jquery/chapter-2/begin/scripts/jquery.js"    type="text/javascript"></script>

この行で

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
于 2012-04-27T20:57:08.400 に答える
0

The code seems to work, but in any case pinpoint the selection to the buttons not the containers.

$(".buttons button").click(function(){
    $("li.fish").hide();
});

Judging by your code, where you are loading scripts like

<script src="file://c:/jquery/chapter-2/begin/scripts/jquery.js"    type="text/javascript"></script>

Make is the path is correct and is loaded. Further, It will be better if you relative path rather than absolutes.

<script src="scripts/jquery.js" type="text/javascript"></script>

The snippet above signifies, there is a folder with jQuery script, on the same base path as the active file.

于 2012-04-27T20:50:32.570 に答える