2

yugop.com에 대한 효과와 마찬가지로 일부 이벤트에서 문자 순환 효과를 만들기 위해 jQuery 플러그인을 만들었습니다. 엘리먼트로부터 사이클링을 유발하는 이벤트를 가진 엘리먼트를 분리하고 싶습니다. 그러나 고유 한 아이디를 사용하지 않고 이것을 수행하는 방법을 알 수는 없습니다. 내가 가지고있는 최선의 방법은 텍스트가 사이클링을 유발하는 요소의 자식으로 순환되는 요소를 갖는 것입니다. ID를 기반으로 선택하십시오. 여기 jQuery 문자주기 플러그인을 방해하지 않는 최상의 솔루션은 무엇입니까?

다음은 demo

입니다 플러그인이 여기

$('.c').mouseenter(function(){ 
    if($(this).hasClass('cycling')==false){ 
       $(this).charcycle({'target':'#text'}); 
    } 
}); 

가 트리거 된 DIV 마우스를 올려 놓으면

<div class="c"> 
    <a href="#" id="text">Lorem ipsum dolor sit amet, consectetur adipisicing elit</a> 
</div> 

조작되는 요소의 HTML 마크 업이다라고하는 방법입니다 플러그인을 호출 할 때 지정된 id "text"로 요소의 텍스트를 순환시키는 플러그인입니다. 여기

내가

settings.targetElement=$(this).find(settings.target); 
settings.quoteStr=settings.targetElement.text(); 

어떤 도움을 주시면 감사하겠습니다 플러그인 내에서 사용하고있는 jQuery를 선택기입니다, 감사합니다!

+0

코드를 보여주세요! 나는 당신이 다른 것에 대해 이야기하는 것을 얻지 못한다 ... – inkredibl

+0

죄송합니다. 나는 생각할 수있는 코드를 포함하고 있으며 데모에서 전체 소스를 볼 수 있습니다. – Robin

답변

0

당신은 같은 것을 사용할 수 있습니다

$(this).charcycle({'target': $(this).contents(":first-child") }); 

을하지만 아마 더 실질적으로, 당신은 명시 적으로 대상을 전달되는이 없을 경우, 기본 가을 백 위치로 사용합니다.

+0

이 솔루션에 요소 id를 지정하는 것이 더 좋습니다. 왜냐하면 대상 요소가 실제로 덜 융통성있는 첫 번째 자식이기 때문입니다. 나는 자식 부모 관계가있는 두 요소 또는 고유 한 ID를 사용하는 모든 엄격한 관계없이 스크립트 기능을 유지할 수있는 방법이 있는지 알고 싶어합니다. – Robin

0

hover 요소에 추가 클래스를 사용하여 순환을 트리거 할 클래스의 요소를 지정할 수 있습니다. 이런 식으로 뭔가를 작동 할 수 있습니다 :

$('.c').mouseenter(function(){ 
    if (!$(this).hasClass('cycling')) 
    { 
     var prefix = 'ctarget-'; 
     var classes = $(this).attr('class').split(' '); 
     // enumerate all the classes of this element 
     for (var i in classes) 
     { 
      // if a class starts with a known prefix (see above) 
      if (classes[i].substr(0, prefix.length) == prefix) 
      { 
       // then extract target class from it and use that 
       $(this).charcycle({target: '.'+classes[i].substr(prefix.length)}); 
      } 
     } 
    } 
}); 

html로이과 같습니다

<div class="c ctarget-text1">trigger</div> 
<a href="#" class="text1">Lorem ipsum dolor sit amet</a> 

(그런데 :하지 동일한 ID로 여러 요소를 사용하는 것이 좋은 일이, 당신은 아마 사용해야 수업이 대신 있습니다.)