2011-11-11 2 views
0

요소에 몇 가지 코드를 추가하는 기능이 있습니다. 문제는 내가 jQuery의 셀렉터 ($('.wdcl'))를 사용할 때 잘 동작하지만 새 요소를 만들어 함수에 보내면 작동하지 않는다는 것입니다. . 나는 또한 doWidget 기능 때마다 실행하고자합니다 (addWidgetControls 기능이 다른 곳에서 호출되는의 .js 파일의 코드 여기jQuery에서 코드 가져 오기 HTMLLIElement 객체

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('#menu li a').click(function(){ 
      //... 
      var $newItem = $('<li id="TEST" class="widget color-blue"></li>').appendTo($(columns).first()); 
      obj.doWidget($newItem.get(0));    
      return false; 
     }); 
    }); 
</script> 

된다 : 여기

는 HMTL 파일에 임베디드 코드입니다 그렇지 않으면, 내가 무엇을보고 전달 된 개체에서 소스를 출력 할 수있는 방법을 말해주십시오, 내가 잘못된 구문을 사용하고있는 경우 알려 주시기 바랍니다 그래서

addWidgetControls: function() { 
    var func = this.doWidget; 

    $('.widget', $('.column')).each(function() { 
     func(this); 
    }); 
}, 

doWidget: function (wid) { 
    alert(wid); 
     //... 
    } 

: 메뉴 항목은 다른 위젯)을 추가 잘못된. 고맙습니다.

+0

'$ newItem'은 jQuery 객체입니다. '$ (...) '안에 감싸는 것은 쓸모가 없다. – pimvdb

+0

어쨌든 작동하는 것으로 보입니다 : http://jsfiddle.net/ePaFm/. 문제를 자세히 설명해 주시겠습니까? – pimvdb

+0

'obj.runFunc'에 전달하려고하는 것은 무엇입니까? '$ newItem.get (0)'은'$ newItem' 요소의 자바 스크립트 객체/버전을 반환합니다. js 객체 또는 html 문자열'

  • '을 원하십니까? –

    답변

    0

    를 사용하지 말아야합니다, 나는 $newItem.get(0).outerHTML를 사용하고는했다.

    0

    이것은 사용자의 obj.doWidget() 기능에 따라 다릅니다. 이 지정된 요소가 JQuery와 요소임을 의심 경우 IE9에서 get(0)

    get()Retrieve the DOM elements matched by the jQuery object. So it isn't a jQuery object

    +0

    문제는 이들 중 어느 것도 작동하지 않는다는 것입니다. objec 소스를 얻는 방법을 알고 싶습니다. 문제가 무엇인지 알 수 있습니다. –