2010-02-01 2 views
3

를 추가 본인은 PIX 위에 마우스를 이동 텍스트를 표시하려면이 도구를 사랑 pix가 마우스로 클릭됩니다.JQuery와 도구 - - 탭에 마우스 오버 링크

original: <'img src="http://static.flowplayer.org/img/commerce/commercial.png" alt="Commercial version" />' 

adding link: <'a title="Mylink" href="http://mylink.com" target="_blank"><'img src="http://static.flowplayer.org/img/commerce/free.png" alt="Free version" /></a>'' 

[ '소스 만 보여주기 위해 삽입됩니다.] 더 이상 노력이 링크의 마우스 오버와

을 :이 방법을 시도했다. 누군가 그곳에서 무엇을해야하는지 알고 있습니까?

도움을 주셔서 감사합니다.

답변

1

이 jQuery 도구를 사용하지 않았습니다. 하지만이 도구는

<div id="products"> 
    <img src="http://static.flowplayer.org/img/commerce/free.png" alt="Free version" /> 
    <img src="http://static.flowplayer.org/img/commerce/commercial.png" alt="Commercial version" /> 
    <img src="http://static.flowplayer.org/img/commerce/multidomain.png" alt="Multidomain version" /> 
</div> 

이 도구는 사업부 내에서 IMG를 찾을 것 구조를 필요로한다고 생각합니다 (다시, 나는 코드를 보지 못했다을, 그래서 이것은 가정입니다). 많은 jQuery 플러그인에는 특정 형식이 필요합니다.

내가 이런 짓을 했을까 :

<div id="products"> 

     <img src="http://static.flowplayer.org/img/commerce/free.png" alt="Free version" id="image1" /> 
     <img src="http://static.flowplayer.org/img/commerce/commercial.png" alt="Commercial version" id="image2" /> 
     <img src="http://static.flowplayer.org/img/commerce/multidomain.png" alt="Multidomain version" id="image3" /> 
    </div> 

각 태그에 ID를 추가. 나는 그것을 시도하고 플러그인을 깰 것으로 나타나지 않습니다.

그런 다음 자바 스크립트를 사용하여 리디렉션에 이미지의 클릭을 결합 (:) 끔찍한 명명 규칙을 실례) :

$("#image1").click(function() { 
    window.location = 'http://www.google.co.za'; 
}); 

$("#image2").click(function() { 
    window.location = 'http://www.google.co.za/somwhereelse'; 
}); 

$("#image3").click(function() { 
    window.location = 'http://www.google.co.za/helloworld'; 
}); 

희망 도움이

편집

에 귀하의 질문에 대답하려면 페이지로드시 두 번째 이미지의 내용을 표시합니다. 다음 해결책이 있습니다. 이것은 나에게 해결 방법과 같은 느낌이지만, 잘하면 그것이 작동합니다.

페이지로드에서 flowplayer는 인라인 스타일을 사용하는 첫 번째 이미지를 제외하고 모든 이미지를 숨 깁니다.

그래서 우리가해야 할 일은 첫 번째 이미지에서이 스타일을 제거하고 두 번째 이미지에 추가하는 것입니다. 이 작업은 페이지로드시 한 번만 발생해야하므로 document.ready 함수에 추가해야 할 필요가 있음을 기억하십시오.

//make the display attribute of the style none. This will render it invisible 
$("#free").css('display','none'); 
//make the display attribute of the style block (as what Flowplayer does) 
$("#commercial").css('display','block'); 

한 번만 발생하면 FlowPlayer 기능이 마우스 오버시에 정상적으로 시작됩니다.

+0

도움을 주셔서 감사합니다. 첫 번째 그림의 컨텍스트 대신 데모 페이지를 열 때 두 번째 그림의 "컨텍스트"가 표시되도록하는 방법에 대한 아이디어가 있습니까? –

+0

수정 사항을 참조하십시오. 나는 당신이 찾고있는 것을 당신에게주고 있기를 바랍니다. – Kamal

+0

다시 한번 감사드립니다 - 두 번째 조언도 잘 작동하고 있습니다. 두려움, 이것은 나의 마지막 질문이었습니다 ;-) –

0

나는이 플러그인을 잊어 버릴 필요가 있다고 생각한다. 실제로 원하는 것을하기위한 것이 아니기 때문이다. 이 플러그인은 탭을 만드는 데 사용되며 실제로 표시되는 것은 다른 재킷의 탭입니다. 탭은 URL을 열지 않으며, 창에 내용을 표시합니다.

어떤 도구 설명이 필요합니다. 다음은 함께 시작하는 툴팁 목록입니다. http://speckyboy.com/2009/09/16/25-useful-jquery-tooltip-plugins-and-tutorials/

+0

누구나 첫 번째 그림의 컨텍스트 대신 데모 페이지를 열 때 두 번째 그림의 "컨텍스트"가 표시되도록하는 방법을 알고 있습니까? –

0

스팬 내에 이미지가있는 링크를 사용하면 효과가 있습니다.

<span><a href="http://yourlink"><IMG src="./jQuery Tools standalone demo_files/free.png" alt="Free version" class=""></a></span> 

모든 이미지를 연결하지 않아도 구조가 동일하도록 스팬에 모든 이미지를 스틱으로 고정해야합니다.

이렇게하면 이점은 실제 링크로 인덱싱된다는 점입니다. 자바 스크립트 방식은 그렇지 않습니다.

1

간단한 해결책 : 모두 이미지가 <a>으로 묶여 있는지 확인하십시오. 예 :

<div id="products"> 
    <a href="#"><img src="http://static.flowplayer.org/img/commerce/free.png" alt="Free version" /></a> 
    <a href="#"><img src="http://static.flowplayer.org/img/commerce/commercial.png" alt="Commercial version" /></a> 
    <a href="#"><img src="http://static.flowplayer.org/img/commerce/multidomain.png" alt="Multidomain version" /></a> 
</div> 

잘 작동합니다. 방금 해봤 어. jQuery Tools Tabs는 지정한 컨테이너의 모든 자식이 동일한 유형 인 경우에만 작동한다고 가정합니다.

편집 : 예, 첫 번째 유형의 태그에서만 작동합니다. 예 : 첫 번째 두 링크를 <a>에 넣고 세 번째 링크를 두지 않으면 mouseover는 처음 두 개에서만 작동합니다.