2011-03-01 5 views
0

"/images/slide1.jpg"와 같은 이미지의 src 정보가 있습니다. slide1을 slide2로 바꾸고 싶습니다. 어느 것이 든 img src를 찾고 바꿀 올바른 방법을 제공합니까? 당신이 수를 얻고 싶다면이미지 src에서 num 값을 검색하는 방법은 무엇입니까?

+0

그냥 같은 것을 사용' url.substring (13, 1);'. – pimvdb

+1

9 개 이상의 이미지가 사용되면 작동하지 않습니다. –

+0

맞습니다. 3gwebtrain은 slide1과 slide2 만 사용한다고 생각했습니다. 대신에'url.split (".") [0] .substring (13);'또는 유사한 것을 사용할 수 있습니다. – pimvdb

답변

2
document.getElementById('image id goes here'). 
    src = '/images/slide' + number + '.jpg'; 

, 당신의 특별한 경우에, 이것은 작동합니다 :

number = document.getElementById('image id goes here'). 
    src.match(/\d+/)[0]; 
+0

나는 다음과 같은 경로를 얻고있다 : http://someserver.frontend.london.com/images/slide1/slide.jpg 또한 경로는 장소마다 다를 수 있으므로 파일 이름없이 경로를 추출하려고한다. 새 파일 이름을 설정해야합니다. 경로와 파일 이름 만 검색하면됩니까? – 3gwebtrain

+1

어쩌면 새로운 질문을하는 것이 당신의 질문이 지금과는 다르기 때문에 그렇게 할 수 있습니다. –

+0

나는 슬라이드 쇼를 위해 일하고 있는데, 2 개의 버튼이있다. 하나는 옆에 있고, 다른 하나는 이전이다. 다음 버튼을 클릭하는 동안 내 현재 이미지가 다음 이미지로 변경되어야합니다. 이전 버튼을 클릭 한 경우 이전 이미지가로드되어야합니다. 나는 10 개 이상의 이미지를 가지고 있으며 각 이미지 이름은 slide1, slide2, slide3과 비슷하다. 이렇게하려면 내가 묻는 오전 – 3gwebtrain

0

다음은 정규식을 사용하는 예입니다. 그것은 (당신이 증가 할 수있는 것으로 파일 이름에 마지막 번호를 따기뿐만 아니라) 기반, 파일 이름과 확장자에 SRC를 분할

var img = document.getElementById('myimage'), // image element 
    regex = /^(.+\/)([^\/]+)(\d+)(\..+)$/,  // parsing regex 
    matches = regex.exec(img.src);    // execute regex 

// Just to be tidy - getting the matches and parsing the number 
var props = { 
    'base' : matches[1], 
    'filename' : matches[2], 
    'filenumber' : parseInt(matches[3],10), 
    'extension' : matches[4] 
}; 

// Create the next image string 
var nextImage = props.base + props.filename + (props.filenumber+1) + props.extension; 

// Set the next image 
img.src = nextImage; 

alert('Set image to ' + nextImage); 

예 : http://jsfiddle.net/jonathon/JKtXd/

+0

나는 이처럼 사용하고 있지만 작동하지 않습니다 : – 3gwebtrain

+0

나는 다음과 같이 사용하고 있습니다 : http://jsfiddle.net/eqLzD/ 작동하지 않습니다. – 3gwebtrain

+0

내 파일 이름에 두 자리 숫자가 들어가는 동안 예를 들어 slide.10.jpg의 경우 10 대신에 '0'만 사용된다는 것을 의미합니다. – 3gwebtrain

관련 문제