이 jQuery click 기능이 작동하지 않는 이유는 무엇입니까?
코드:
<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 Object Model)이 JavaScript 코드를 실행할 준비가 되었을 때만 실행됩니다."
저는 ON을 $(문서)와 함께 사용하여 이 문제에 대한 최적의 해결책을 찾았습니다.
$(document).on('click', '#yourid', function() { alert("hello"); });
ID 시작은 아래를 참조하십시오.
$(document).on('click', 'div[id^="start"]', function() {
alert ('hello'); });
마지막으로 1주일 후에는 클릭 트리거를 추가할 필요가 없습니다.이것이 많은 사람들에게 도움이 되기를 바랍니다.
코드가 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>
알림: jsbin 데모에서 교체http와 함께https코드에 있거나 이 변형 데모를 사용합니다.
추가 시도$(document).ready(function(){스크립트의 시작 부분까지, 그리고 나서.});또한, 그것은?divID가 제대로 들어 있습니까, 즉 클래스가 아닌 ID로?
Javascript-Code를 다음으로 묶어야 합니다.$(document).ready(function(){});이 JS Fiddle을 보세요.
JS 코드:
$(document).ready(function() {
$("#clicker").click(function () {
alert("Hello!");
$(".hide_div").hide();
});
});
단추(예: div 또는 투명 img)에서 단추를 클릭하지 않는 것이 없는지 확인합니다.바보같이 들리지만, 가끔 우리는 jQuery가 작동하지 않고 모든 것들과 문제가 DOM 요소의 위치에 있다고 생각합니다.
사용할 수 있습니다.$(function(){ // code });문서가 해당 블록 내에서 코드를 실행할 준비가 되었을 때 실행됩니다.
$(function(){
$('#clicker').click(function(){
alert('hey');
$('.hide_div').hide();
});
});
핸들바와 같은 클라이언트 측 템플릿 엔진을 사용하는 경우 document.ready 뒤에 j가 로드되므로 이벤트를 바인딩할 요소가 없으므로 클릭 핸들러를 사용하거나 본문에서 사용하여 현재 대상을 확인합니다.
적절한 브라우저 다시 로드
js 파일을 별도로 보관하는 경우에도 간단히 확인할 수 있습니다. 리소스를 제대로 다시 로드해야 합니다.브라우저는 일반적으로 파일을 캐시하므로 로드된 리소스에서 이전 오타가 수정되었는지 확인하십시오.
Chrome/Chromium에서 영구 캐시를 사용하지 않도록 설정하려면 이 답변을 참조하십시오.그렇지 않으면 일반적으로 이 답변에 언급된 대로 + 또는 +F5를 F5사용하여 전체 다시 로드를 강제로 수행할 수 있습니다.
언급URL : https://stackoverflow.com/questions/18602331/why-is-this-jquery-click-function-not-working
'programing' 카테고리의 다른 글
| 정렬되지 않은 목록을 두 개의 열에 표시하는 방법은 무엇입니까? (0) | 2023.08.05 |
|---|---|
| Objective-C의 취약하고 강력한 속성 설정자 속성 (0) | 2023.08.05 |
| 중간에 단어가 있는 수평선에 대한 CSS 기법 (0) | 2023.08.05 |
| iPhone/iPad/iPod touch 색상 감지? (0) | 2023.08.05 |
| 그루비 멀티라인 스트링에 무슨 문제가 있나요? (0) | 2023.08.05 |