[javascript] 이 jQuery 클릭 기능이 작동하지 않는 이유는 무엇입니까?

암호:

<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script type="text/javascript">
    $("#clicker").click(function () {
        alert("Hello!");
        $(".hide_div").hide();
    });
</script>

위의 코드는 작동하지 않습니다. #clicker를 클릭하면 경고가 표시되지 않고 숨겨지지 않습니다. 콘솔을 확인했는데 오류가 없습니다. 또한 JQuery가로드되고 있는지 실제로 확인했습니다. 그래서 문제가 무엇인지 확실하지 않습니다. 나는 또한 경고와 함께 문서 준비 기능을 수행했으며 작동하여 내가 뭘 잘못하고 있는지 확신하지 못했습니다. 도와주세요. 감사!



답변

$(document).ready(function() {});블록에 자바 스크립트 코드를 추가해야합니다 .

$(document).ready(function() {
  $("#clicker").click(function () {
    alert("Hello!");
    $(".hide_div").hide();
  });
});

으로 jQuery를 문서의 상태 : 준비 “페이지는 문서가 될 때까지 안전하게 조작 할 수 없습니다” “jQuery를 당신을 위해 준비의 상태를 감지 코드 내부에 포함되어 있습니다.. $( document ).ready()만 페이지의 문서 객체 모델 (DOM) 한 번 실행되는 자바 스크립트에 대한 준비가되어 실행할 코드 “


답변

$ (document)와 함께 ON을 사용하여이 문제에 대한 최상의 솔루션을 찾았습니다.

 $(document).on('click', '#yourid', function() { alert("hello"); });

ID 시작은 아래를 참조하십시오.

$(document).on('click', 'div[id^="start"]', function() {
alert ('hello'); });

마지막으로 1 주 후 onclick 트리거를 추가 할 필요가 없습니다. 나는 이것이 많은 사람들에게 도움이되기를 바랍니다.


답변

코드가 document.ready () 없이도 작동 할 수 있습니다. 스크립트가 #clicker 뒤에 있는지 확인하세요. 이 데모를 확인하세요 : http://jsbin.com/aPAsaZo/1/

준비 개념의 아이디어. 스크립트가 페이지의 최신 항목이거나 영향을받는 요소 뒤에 있는지 확인하면 작동합니다.

<!DOCTYPE html>
<html>
<head>


<meta charset=utf-8 />
<title>JS Bin</title>
</head>
<body>
  <script src="https://code.jquery.com/jquery-latest.min.js"
        type="text/javascript"></script>
  <a href="#" id="clicker" value="Click Me!" >Click Me</a>
  <script type="text/javascript">

        $("#clicker").click(function () {
            alert("Hello!");
            $(".hide_div").hide();

        });


</script>

</body>
</html>

주의 사항 :
에서데모 교체 httphttps코드에가, 또는이 변형 사용 데모


답변

$(document).ready(function(){});Look this JSfiddle로 Javascript-Code를 래핑해야합니다 .

JS 코드 :

$(document).ready(function() {

    $("#clicker").click(function () {
        alert("Hello!");
        $(".hide_div").hide();
    });
});


답변

$(document).ready(function(){스크립트 시작 부분에 추가 한 다음 });. 또한 divID가 클래스가 아닌 ID로 올바르게 포함되어 있습니까?


답변

버튼을 클릭하지 못하게하는 버튼 (예 : div 또는 투명 이미지)이 없는지 확인합니다. 어리석게 들리지만 때때로 우리는 jQuery가 작동하지 않는다고 생각하고 모든 것이 DOM 요소의 위치에 있습니다.


답변

$(function(){ // code });문서가 해당 블록 내에서 코드를 실행할 준비가되었을 때 실행되는 것을 사용할 수 있습니다 .

$(function(){
    $('#clicker').click(function(){
        alert('hey');
        $('.hide_div').hide();
    });
});