当我在浏览器中打开HTML文件时,javascript无法正常工作

时间:2015-04-07 10:15:14

标签: javascript html browser

为什么javascript在这里工作正常:Fiddle

但是当我保存它并将javascript包装在body标签内的script html标签中,然后在浏览器中打开时。复选框不响应,所有列都显示在浏览器中,而默认情况下应隐藏某些列。

 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
 <title>čezožinski odnosi</title>
 <link rel="stylesheet" type="text/css" href="timeline.css">
 <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/jquery-ui.js"></script>
 <script>

$(document).ready(function() {
if($("#opt1").is(":checked")){
     $("#col1").show();
    $(".data1").show();   
}else{
     $("#col1").hide();
    $(".data1").hide();
}
if($("#opt2").is(":checked")){
     $("#col2").show();
    $(".data2").show();   
}else{
     $("#col2").hide();
    $(".data2").hide();
}    
if($("#opt3").is(":checked")){
     $("#col3").show();
    $(".data3").show();   
}else{
     $("#col3").hide();
    $(".data3").hide();
}
if($("#opt4").is(":checked")){
     $("#col4").show();
    $(".data4").show();   
}else{
     $("#col4").hide();
    $(".data4").hide();
}


$("#opt1").live('click', function() {
    if($("#opt1").is(":checked")){
     $("#col1").show();
    $(".data1").show();   
}else{
     $("#col1").hide();
    $(".data1").hide();
}
});

$("#opt2").live('click', function() {
   if($("#opt2").is(":checked")){
     $("#col2").show();
    $(".data2").show();   
}else{
     $("#col2").hide();
    $(".data2").hide();
}
});
$("#opt3").live('click', function() {
    if($("#opt3").is(":checked")){
     $("#col3").show();
    $(".data3").show();   
}else{
     $("#col3").hide();
    $(".data3").hide();
}
});
$("#opt4").live('click', function() {
    if($("#opt4").is(":checked")){
     $("#col4").show();
    $(".data4").show();   
}else{
     $("#col4").hide();
    $(".data4").hide();
}
});    
});

</script>

</head>

2 个答案:

答案 0 :(得分:1)

似乎你没有在你的例子中包含jquery.js文件,在参考JSFiddle示例中它们包含了jQuery 1.7.2,

<script>
   $(document).ready(function() {
</script>

运行上面的代码jquery文件应该包含在你的文档中。

答案 1 :(得分:0)

您指的是Jquery 1.11+,并使用$("#opt4").live(..)

在Jquery 1.7 +

中不推荐使用Live

使用$("#opt4").on()代替。 (在.on

的任何地方使用.live

请参阅this正在发挥作用。