2012-10-03 2 views
0

tumblr 대시 보드에 요소를 삽입하고 사용자의 추적 태그를 페이지의 다른 부분에서 가져온 사용자 스크립트를 작성하고 있습니다. 내 스크립트가 제대로 작동해야하는 것 같지만, 지금까지해야 할 일은 요소를 만드는 것입니다. 요소의 내용은 절대로 채워지지 않습니다.JQuery 스크립트가 전체 실행에 실패했습니다

var jQuery, $ = null; 

function addJQuery(callback) { 
var p = null; 

if(window.opera || window.navigator.vendor.match(/Google/)) { 
    var div = document.createElement("div"); 
    div.setAttribute("onclick", "return window;"); 
    p = div.onclick(); 
} 
else { 
    p = unsafeWindow; 
} 

jQuery = $ = p.jQuery.noConflict(); 
callback(); 
} 

var myFunction = function() { 
jQuery('div#right_column ul#dashboard_controls_open_blog').after('<ul class="controls_section" id="tracked_tags"></ul>'); 
jQuery('div.tracked_tags a').each(function (i) { 
    var tagID = jQuery(this).attr(id); 
    var tagIDNumber = tagID.replace('tag_',''); 
    var tagName = jQuery(this).attr(href); 
    var tagNameClean = tagName.replace('/tagged/',''); 
    var tagContent =''; 
    tagContent += '<a href="'+tagName+'" id="'+tagID+'" class="tag">'; 
    tagContent += '<div class="hide_overflow">'+tagNameClean+'</div>'; 
    tagContent += '<span id="tag_unread_'+tagIDNumber+'" class="count" style=""></span></a>'; 
    tagContent += '<a class="sub_control" id="track_'+tagIDNumber+'" style="display:none;" onclick="track_tag('+tagIDNumber+', "n4av5kz9baBCv1PRCPUlT8X5K8", false);return false;">track</a>'; 
    tagContent += '<div class="remove_tag" id="untrack_'+tagIDNumber+'" onclick="if (confirm("Stop tracking this tag?")) {track_tag('+tagIDNumber+', "n4av5kz9baBCv1PRCPUlT8X5K8", true);} return false;">*</div>'; 
    tagContent += '<div id="tag_loader_'+tagIDNumber+'" class="tracked_tag_loader" style="display:none;"></div></li>'; 
    //tagContent += '<script type="text/javascript">new Effect.Appear("tag_unread_'+tagIDNumber+'");</script>'; 

    jQuery(tagContent).appendTo('div#right_column ul#tracked_tags'); 
    alert(tagID); 


}); 

}; 

addJQuery(myFunction); 

Here's 나뿐만 아니라 포함과 함께 일하고 있어요 HTML과 JSFiddle에서 스크립트. 어떤 도움을 주시면 감사하겠습니다.

답변

0

JSFiddle은 매우 유용하여 스크립트에 몇 가지 오류가 있음을 발견했습니다. 일반적으로, href의 javascript가 제대로 이스케이프 처리되지 않았습니다. 또한 잘못된 요소가 추가되었습니다.

it working을 볼 수 있습니다.

+0

브릴리언트. 실제로 #tracked_tags UL을 만들고 목록 항목을 추가하려고 했으므로 그 부분을 전환했습니다. 또한 #tracked_tags를 만드는 코드 줄 끝에 세미콜론이 누락 된 것을 발견했습니다. 그 두 가지를 정리하면 훌륭하게 작동했습니다. 고마워요! –

+0

당신은 환영합니다 :) – nrodic

관련 문제