2012-12-05 2 views
17

가능한 중복 : 이미지 src를 비어있는 것으로 설정하는 방법은 무엇입니까?

사용자가 클릭
Setting image src attribute not working in Chrome

링크는 내가 비워 이미지의 src 속성을 설정해야합니다 "제거". 내가

$('#img').prop('src', null); 

src를 사용하여 작업을 수행 할 때 비어있는 것이 아니라 나에게 미래

에 다시 할당 할 수 없습니다 현재의 URL를

포인트 나는

$('#img').removeProp('src'); 

를 사용하여 src를 제거하는 경우

이 작업을 수행하는 가장 좋은 방법은 무엇입니까?

+1

참조하시기 바랍니다 [이 답변] (http://stackoverflow.com/a/8425853/561731) – Neal

+0

빈 문자열은 실제로 기술적으로 말하기, 이미지에 대한 유효한 SRC 될 수 있습니다 src를 "제거"하지 않습니다. '# '와 동일하게, 현재 URL과 해시를 사용합니다. 실제 예 : http://lcamtuf.coredump.cx/squirrel/ 현재 URL로 요청을 보냅니다. 다른 접근법을 사용하는 것이 좋습니다. –

답변

8

attr()를 사용하려고하면 ID 선택기를 가지고

Live Demo

$('#img').attr('src', ''); 

. 네이티브 자바 스크립트 메서드 document.getElementById를 사용하면 성능이 향상됩니다. 또한 empty 문자열 대신 #src으로 설정해야 할 수도 있습니다.

document.getElementById('img').src = "#"; 
+4

이것이 작동하지 않는 것 같습니다. 여전히 빈 값 대신 현재 URL을 가리 킵니다. – StackOverflower

+0

내 답변에 라이브 데모를 추가했습니다. 작동하는지 확인하십시오. – Adil

+0

@Adil [실제 이미지와 작동하지 않습니다.] (http://jsfiddle.net/Vnj53/1/) – Neal

6

난 그냥 기저의 <img> 노드에 액세스하고 빈 문자열src의 값을 설정하는 것입니다.

$('#img')[ 0 ].src = '#'; 

바이올린 : http://jsfiddle.net/P4pRu/


업데이트 : 우리가 그냥 빈 문자열에 통과 할 때 그것은 크롬 것 같아 만족하지 않습니다. Firefox는 여전히 예상되는 동작을 보여줍니다 (이전 버전에서는 몇 주 전에 Chrome에서 작동했음을 확신합니다).

그러나 예를 들어 #을 전달하면 정상적으로 작동합니다. 업데이트 2


:

심지어 imgNode.removeAttribute('src');는 더 이상 (... 재미) 크롬에서 더 이상 이미지의 시각적 표현을 제거하지 않습니다.

+1

이것이 작동하지 않는 것 같습니다. 여전히 빈 값 대신 현재 URL을 가리 킵니다. – StackOverflower

+1

@ TimmyO'Tool : 참으로. 내게는 "새로운"것처럼 보이는 이상한 행동. 그러나 예를 들어'# '를 넘겨 주면 작동합니다. – jAndy

+2

빈 문자열은 실제로 이미지의 유효한 src 일 수 있습니다. 기술적으로 말해서 src를 "제거"하지는 않습니다. '# '와 동일하게, 현재 URL과 해시를 사용합니다. 실제 예 : http://lcamtuf.coredump.cx/squirrel/ 현재 URL로 요청을 보냅니다. –

0

'src'속성은 실제로 속성이 아니며 속성입니다. 부울이나 목록 및 속성으로 설정할 수있는 속성을 훨씬 더 동적 인 것으로 생각하십시오. jQuery를 1.6로서

$('#img').attr('src', ''); 

는 .prop() 메소드는 동안, 명시 적 속성 값을 검색하는 방법을 제공한다.ATTR()는 속성을 검색 - http://api.jquery.com/prop/

+0

답변을 테스트하십시오. (메모가 정확하더라도) 작동하지 않습니다. –

+0

예. jsfiddle에서 방금 테스트했습니다. http://jsfiddle.net/aAfvx/1/ –

+0

Chrome 문제인 것 같아서 Chrome에서 사용해보세요. –

관련 문제