2016-11-15 27 views
1

我想要九个下拉框但目前只有两个。问题是只有其中一个正在工作,但它们的代码与HTML中不同部分的ID的明显变化相同。 当我点击第一个(“mid_side_button”)它完美的作品,并显示使用CSS创建的内容。当我点击另一个按钮(“right_side_button”)时,它不会执行任何操作。Javascript:第一个下拉框工作,但其他人不是。代码是相同的

以下是包含相关部分的相关Javascript和HTML < div>元素。

请不要太注意CSS,它仅供进一步参考。

如果需要更多信息,请回复。

window.addEventListener('mouseup', function (event) {  /* one of many approaches to open a dropdown */ 
 
    "use strict"; 
 
    var rightdropdown = document.getElementById('right_side_dropdown_content'); 
 
    var rightdropdownbuttontoggle = document.getElementById('right_side_button'); 
 
    if (event.target !== rightdropdown) { 
 
     rightdropdown.style.display = 'none'; 
 
    } 
 
}); 
 
window.onload = function() { 
 
    "use strict"; 
 
    var rightbutton = document.getElementById('right_side_button'); 
 
    /* creating variable "midbutton" and calling the ID "mid_side_button" */ 
 
    var rightdropdowncontent = document.getElementById('right_side_dropdown_content'); 
 
    /* same as above */ 
 
    document.onclick = function (e) {   /* creating function "e" */ 
 
     if (e.target === rightbutton) { 
 
      /* if variable "midbutton" is clicked, display "middropdowncontent" */ 
 
      rightdropdowncontent.style.display = 'block'; 
 
     } 
 
    }; 
 
}; 
 
window.addEventListener('mouseup', function (event) {  /* one of many approaches to open a dropdown */ 
 
    "use strict"; 
 
    var middropdown = document.getElementById('mid_side_dropdown_content'); 
 
    var middropdownbuttontoggle = document.getElementById('mid_side_button'); 
 
    if (event.target !== middropdown) { 
 
     middropdown.style.display = 'none'; 
 
    } 
 
}); 
 
window.onload = function() { 
 
    "use strict"; 
 
    var midbutton = document.getElementById('mid_side_button'); 
 
    /* creating variable "midbutton" and calling the ID "mid_side_button" */ 
 
    var middropdowncontent = document.getElementById('mid_side_dropdown_content'); 
 
    /* same as above */ 
 
    document.onclick = function (e) {   /* creating function "e" */ 
 
     if (e.target === midbutton) { 
 
      /* if variable "midbutton" is clicked, display "middropdowncontent" */ 
 
      middropdowncontent.style.display = 'block'; 
 
     } 
 
    }; 
 
};
.individual_left_side_links{ 
 
    margin: 0px; 
 
    margin-right: 5px; 
 
    padding-top: 20px; 
 
    padding-bottom: 20px; 
 
    padding-left: 20px; 
 
    display: block; 
 
    margin-bottom: 10px; 
 
    box-shadow: 2px 2px 2px #888; 
 
    background-image: -webkit-radial-gradient(left top, ellipse farthest-side, #8CFBFF 0%, #FFFFFF 100%); 
 
    overflow: auto; 
 
    width: 300px; 
 
} 
 
#vehicle_3_header{ 
 
    margin-left: 5px; 
 
    margin-right: 5px; 
 
    margin-top: 5px; 
 
    margin-bottom: 0px; 
 
    padding: 0px; 
 
    background-image: -webkit-radial-gradient(left top, ellipse farthest-side, #8CFBFF 0%, #FFFFFF 100%); 
 
    width: 300px; 
 
    float: right; 
 
    border-bottom: 2px solid black; 
 
} 
 
.compare_sections_titles{ 
 
    margin-left: 10px; 
 
    margin-right: 10px; 
 
    margin-top: 5px; 
 
    margin-bottom: 0px; 
 
} 
 
#right_section{ 
 
    margin-left: 5px; 
 
    margin-right: 5px; 
 
    margin-bottom: 5px; 
 
    margin-top: 0px; 
 
    float: right; 
 
    text-align: center; 
 
    padding-top: 20px; 
 
    padding-bottom: 50px; 
 
    width: 300px; 
 
    margin-bottom: 10px; 
 
    box-shadow: 2px 2px 2px #888; 
 
    background-image: -webkit-radial-gradient(left top, ellipse farthest-side, #8CFBFF 0%, #FFFFFF 100%); 
 
    overflow:auto; 
 
} 
 
#right_side_button{ 
 
    background-color: aqua; 
 
    padding-right: 90px; 
 
    padding-left: 90px; 
 
    font-size: 16px; 
 
    border: 1px solid grey; 
 
    -moz-border-radius-topleft: 5px; 
 
\t border-top-left-radius: 5px; 
 
\t -moz-border-radius-topright: 5px; 
 
\t border-top-right-radius: 5px; 
 
    box-shadow: 2px 2px 2px #888; 
 
} 
 
#right_side_dropdown_content{ 
 
    display: none; 
 
    position:absolute; 
 
    background-color: #f9f9f9; 
 
    min-width: 220px; 
 
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); 
 
    margin-left: 40px; 
 
    text-align: left; 
 
} 
 
#right_side_dropdown_content a{ 
 
    color: black; 
 
    padding: 12px 16px; 
 
    text-decoration: none; 
 
    display: block; 
 
} 
 
#right_side_dropdown_content a:hover { 
 
    background-color: #f1f1f1; 
 
} 
 
#mid_section{ 
 
    margin: 5px; 
 
    float: left; 
 
    width: 320px; 
 
    text-align: left; 
 
    padding-left: 10px; 
 
    padding-right: 10px; 
 
    background-image: -webkit-radial-gradient(left top, ellipse farthest-side, #8CFBFF 0%, #FFFFFF 100%); 
 
    box-shadow: 1px 1px 2px 2px #888; 
 
} 
 
#mid_side_button{ 
 
    background-color: aqua; 
 
    padding-right: 90px; 
 
    padding-left: 90px; 
 
    font-size: 16px; 
 
    border: 1px solid grey; 
 
    -moz-border-radius-topleft: 5px; 
 
\t border-top-left-radius: 5px; 
 
\t -moz-border-radius-topright: 5px; 
 
\t border-top-right-radius: 5px; 
 
    box-shadow: 2px 2px 2px #888; 
 
} 
 
#mid_side_dropdown_content{ 
 
    display: none; 
 
    position:absolute; 
 
    background-color: #f9f9f9; 
 
    min-width: 220px; 
 
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); 
 
    margin-left: 40px; 
 
    text-align: left; 
 
} 
 
#mid_side_dropdown_content a{ 
 
    color: black; 
 
    padding: 12px 16px; 
 
    text-decoration: none; 
 
    display: block; 
 
} 
 
#mid_dropdown_text{ 
 
    color: white; 
 
    text-align:center; 
 
} 
 
#mid_side_dropdown_content a:hover { 
 
    background-color: #f1f1f1 
 
}
<div id="mid_container"> 
 
     <header id="container_top_padder"> 
 
       <li><h2 id="individual_top_padder_text">Compare Vehicles</h2></li> 
 
     </header> 
 
     <article id="left_section"> 
 
     <nav id="left_side_nav">      
 
       <li><a class="individual_left_side_links">Cars</a></li> 
 
       <li><a class="individual_left_side_links">Bikes</a></li> 
 
       <li><a class="individual_left_side_links">Trucks</a></li> 
 
     </nav> 
 
     </article> 
 
     <article id="mid_section"> 
 
         <p>Title</p> 
 
         <p>Subtitle</p> 
 
         <p>Subtitle</p> 
 
         <p>Subtitle</p> 
 
         <button id="mid_side_button">Make</button> 
 
         <div id="mid_side_dropdown_content"> 
 
         <p><a class="mid_dropdown_text" href="#">Link 1</a></p> 
 
         <p><a class="mid_dropdown_text" href="#">Link 2</a></p> 
 
         <p><a class="mid_dropdown_text" href="#">Link 3</a></p> 
 
         </div> 
 
     </article> 
 
     <header id="vehicle_3_header"> 
 
      <h3 class="compare_sections_titles">Vehicle 3</h3> 
 
     </header>  
 
      <article id="right_section"> 
 
       <button id="right_side_button">Make</button> 
 
       <div id="right_side_dropdown_content"> 
 
        <p><a href="#">Link 1</a></p> 
 
        <p><a href="#">Link 2</a></p> 
 
        <p><a href="#">Link 3</a></p> 
 
       </div> 
 
      </article> 
 
    </div> 
 
    <script type="text/javascript" src="Test3Javascript.js"></script> 
 
    </body> 
 
</html>

回答

2

请加单功能window.load函数的代码下同或者你只是更换工作

window.addEventListener('mouseup', function (event) { 
     "use strict"; 
     var rightdropdown = document.getElementById('right_side_dropdown_content'); 
     var rightdropdownbuttontoggle = document.getElementById('right_side_button'); 

     var middropdown = document.getElementById('mid_side_dropdown_content'); 
     var middropdownbuttontoggle = document.getElementById('mid_side_button'); 

     if (event.target !== rightdropdown) { 
      rightdropdown.style.display = 'none'; 
     }    
     else if (event.target !== middropdown) { 
      middropdown.style.display = 'none'; 
     } 
    }); 
    window.onload = function() {   
     "use strict"; 
     var rightbutton = document.getElementById('right_side_button'); 
     var rightdropdowncontent = document.getElementById('right_side_dropdown_content'); 

     var midbutton = document.getElementById('mid_side_button'); 
     var middropdowncontent = document.getElementById('mid_side_dropdown_content'); 

     document.onclick = function (e) {   /* creating function "e" */ 
      if (e.target === rightbutton) { 
       /* if variable "midbutton" is clicked, display "middropdowncontent" */ 
       rightdropdowncontent.style.display = 'block'; 
      } 
      else if (e.target === midbutton) { 
       /* if variable "midbutton" is clicked, display "middropdowncontent" */ 
       middropdowncontent.style.display = 'block'; 
      } 
     }; 
    }; 
0

window.addEventListener('mouseup', function (event) {  /* one of many approaches to open a dropdown */ 
 
    "use strict"; 
 
    var rightdropdown = document.getElementById('right_side_dropdown_content'); 
 
    var middropdown = document.getElementById('mid_side_dropdown_content'); 
 
    
 
    if (event.target !== middropdown) { 
 
     middropdown.style.display = 'none'; 
 
    } 
 
    if (event.target !== rightdropdown) { 
 
     rightdropdown.style.display = 'none'; 
 
    } 
 
}); 
 
window.onload = function() { 
 
    "use strict"; 
 
    var rightbutton = document.getElementById('right_side_button'); 
 
    /* creating variable "midbutton" and calling the ID "mid_side_button" */ 
 
    var rightdropdowncontent = document.getElementById('right_side_dropdown_content'); 
 

 
    var midbutton = document.getElementById('mid_side_button'); 
 
    /* creating variable "midbutton" and calling the ID "mid_side_button" */ 
 
    var middropdowncontent = document.getElementById('mid_side_dropdown_content'); 
 
    
 
    document.onclick = function (e) {   /* creating function "e" */ 
 
     if (e.target === rightbutton) { 
 
      /* if variable "midbutton" is clicked, display "middropdowncontent" */ 
 
      rightdropdowncontent.style.display = 'block'; 
 
     } 
 
if (e.target === midbutton) { 
 
      /* if variable "midbutton" is clicked, display "middropdowncontent" */ 
 
      middropdowncontent.style.display = 'block'; 
 
     } 
 
    }; 
 
};
.individual_left_side_links{ 
 
    margin: 0px; 
 
    margin-right: 5px; 
 
    padding-top: 20px; 
 
    padding-bottom: 20px; 
 
    padding-left: 20px; 
 
    display: block; 
 
    margin-bottom: 10px; 
 
    box-shadow: 2px 2px 2px #888; 
 
    background-image: -webkit-radial-gradient(left top, ellipse farthest-side, #8CFBFF 0%, #FFFFFF 100%); 
 
    overflow: auto; 
 
    width: 300px; 
 
} 
 
#vehicle_3_header{ 
 
    margin-left: 5px; 
 
    margin-right: 5px; 
 
    margin-top: 5px; 
 
    margin-bottom: 0px; 
 
    padding: 0px; 
 
    background-image: -webkit-radial-gradient(left top, ellipse farthest-side, #8CFBFF 0%, #FFFFFF 100%); 
 
    width: 300px; 
 
    float: right; 
 
    border-bottom: 2px solid black; 
 
} 
 
.compare_sections_titles{ 
 
    margin-left: 10px; 
 
    margin-right: 10px; 
 
    margin-top: 5px; 
 
    margin-bottom: 0px; 
 
} 
 
#right_section{ 
 
    margin-left: 5px; 
 
    margin-right: 5px; 
 
    margin-bottom: 5px; 
 
    margin-top: 0px; 
 
    float: right; 
 
    text-align: center; 
 
    padding-top: 20px; 
 
    padding-bottom: 50px; 
 
    width: 300px; 
 
    margin-bottom: 10px; 
 
    box-shadow: 2px 2px 2px #888; 
 
    background-image: -webkit-radial-gradient(left top, ellipse farthest-side, #8CFBFF 0%, #FFFFFF 100%); 
 
    overflow:auto; 
 
} 
 
#right_side_button{ 
 
    background-color: aqua; 
 
    padding-right: 90px; 
 
    padding-left: 90px; 
 
    font-size: 16px; 
 
    border: 1px solid grey; 
 
    -moz-border-radius-topleft: 5px; 
 
\t border-top-left-radius: 5px; 
 
\t -moz-border-radius-topright: 5px; 
 
\t border-top-right-radius: 5px; 
 
    box-shadow: 2px 2px 2px #888; 
 
} 
 
#right_side_dropdown_content{ 
 
    display: none; 
 
    position:absolute; 
 
    background-color: #f9f9f9; 
 
    min-width: 220px; 
 
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); 
 
    margin-left: 40px; 
 
    text-align: left; 
 
} 
 
#right_side_dropdown_content a{ 
 
    color: black; 
 
    padding: 12px 16px; 
 
    text-decoration: none; 
 
    display: block; 
 
} 
 
#right_side_dropdown_content a:hover { 
 
    background-color: #f1f1f1; 
 
} 
 
#mid_section{ 
 
    margin: 5px; 
 
    float: left; 
 
    width: 320px; 
 
    text-align: left; 
 
    padding-left: 10px; 
 
    padding-right: 10px; 
 
    background-image: -webkit-radial-gradient(left top, ellipse farthest-side, #8CFBFF 0%, #FFFFFF 100%); 
 
    box-shadow: 1px 1px 2px 2px #888; 
 
} 
 
#mid_side_button{ 
 
    background-color: aqua; 
 
    padding-right: 90px; 
 
    padding-left: 90px; 
 
    font-size: 16px; 
 
    border: 1px solid grey; 
 
    -moz-border-radius-topleft: 5px; 
 
\t border-top-left-radius: 5px; 
 
\t -moz-border-radius-topright: 5px; 
 
\t border-top-right-radius: 5px; 
 
    box-shadow: 2px 2px 2px #888; 
 
} 
 
#mid_side_dropdown_content{ 
 
    display: none; 
 
    position:absolute; 
 
    background-color: #f9f9f9; 
 
    min-width: 220px; 
 
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); 
 
    margin-left: 40px; 
 
    text-align: left; 
 
} 
 
#mid_side_dropdown_content a{ 
 
    color: black; 
 
    padding: 12px 16px; 
 
    text-decoration: none; 
 
    display: block; 
 
} 
 
#mid_dropdown_text{ 
 
    color: white; 
 
    text-align:center; 
 
} 
 
#mid_side_dropdown_content a:hover { 
 
    background-color: #f1f1f1 
 
}
<div id="mid_container">   
 
    <article id="mid_section">        
 
     <button id="mid_side_button">Make</button> 
 
      <div id="mid_side_dropdown_content"> 
 
       <p><a class="mid_dropdown_text" href="#">Link 1</a></p> 
 
       <p><a class="mid_dropdown_text" href="#">Link 2</a></p> 
 
       <p><a class="mid_dropdown_text" href="#">Link 3</a></p> 
 
      </div> 
 
     </article> 
 
     <header id="vehicle_3_header"> 
 
      <h3 class="compare_sections_titles">Vehicle 3</h3> 
 
     </header>  
 
      <article id="right_section"> 
 
       <button id="right_side_button">Make</button> 
 
       <div id="right_side_dropdown_content"> 
 
        <p><a href="#">Link 1</a></p> 
 
        <p><a href="#">Link 2</a></p> 
 
        <p><a href="#">Link 3</a></p> 
 
       </div> 
 
      </article> 
 
    </div> 
 
    <script type="text/javascript" src="Test3Javascript.js"></script> 
 
    </body> 
 
</html>

脚本代码
0

W如果你点击右侧,因为你有两个window.load函数只用于中间按钮功能。 写那么在相同的负载功能的中间按钮下方右侧的按钮的代码,即 单window.load功能同时包含按钮点击事件

window.onload = function() { 
    "use strict"; 
    var midbutton = document.getElementById('mid_side_button'); 
    /* creating variable "midbutton" and calling the ID "mid_side_button" */ 
    var middropdowncontent = document.getElementById('mid_side_dropdown_content'); 
    /* same as above */ 
    document.onclick = function (e) {   /* creating function "e" */ 
     if (e.target === midbutton) { 
      /* if variable "midbutton" is clicked, display "middropdowncontent" */ 
      middropdowncontent.style.display = 'block'; 
     } 
    }; 

var rightbutton = document.getElementById('right_side_button'); 
    /* creating variable "midbutton" and calling the ID "mid_side_button" */ 
    var rightdropdowncontent = document.getElementById('right_side_dropdown_content'); 
    /* same as above */ 
    document.onclick = function (e) {   /* creating function "e" */ 
     if (e.target === rightbutton) { 
      /* if variable "midbutton" is clicked, display "middropdowncontent" */ 
      rightdropdowncontent.style.display = 'block'; 
     } 
    }; 
}; 
+1

你测试它?不起作用。 – Hriju

+0

是的,它会工作@Hriju –

+0

谢谢你们,这么多的帮助!对不起,我不能按评论上的顶部箭头,新用户在这里。 – Dale

相关问题