呀,代码格式好看多了

cookoo 2006-11-05
突然发现代码显示改成wordpress那种有行数的风格了。在opera和ff里也没有多余的空行了。舒服~~
谢谢JE开发团队!
Feiing 2006-11-05
是地
dwangel 2006-11-05
同意。
而且加上滚动条,省地方了。
zelsa 2006-11-05
不错。
问一下,这个是怎么做的?是一个开源的控件吧?
叶子 2006-11-05
<textarea name="code" class="xml" rows="15" cols="100" >

render_code();

再去js里找render_code();,发现在application里。再发现调用的dp.SyntaxHighlighter.HighlightAll,在shCore发现,很长一段

js+css实现的。HOHO~~~


测试下js执行速度。

// Place your application-specific JavaScript functions and classes here
// This file is automatically included by javascript_include_tag :defaults

function before_ajax_search(id){
   $('search_result').innerHTML = '<table width="100%"><tr><td><div class="loading_div">'+
   '<img src="/images/loading.gif" position="absmiddle"/> 正在搜索...</div></td></tr></table>';
   $('search_submit').disabled = true;
}

function after_ajax_search(id,hide_objs){
   Element.hide('search_result');
   $('search_submit').disabled = false;
}

function show_loading(id,hide_objs){
   $(id).innerHTML = '<img src="/images/loading.gif" position="absmiddle"/>';
   for(var i=0;i<hide_objs.length;i++){
      $(hide_objs[i]).disabled = true;
   }
}

function hide_loading(id,hide_objs){
   $(id).innerHTML = '';
   for(var i=0;i<hide_objs.length;i++){
      $(hide_objs[i]).disabled = false;
   }
}

function login_show(action,form){
   win.setTitle('用户登录');
   win.setSize(300,200);
   win.getContent().innerHTML= $('login-c').innerHTML;
   if(action){
     $('login-form-result').innerHTML = '<span style="color:green;">使用此功能,请先登录!</span>';
     $('action_name').value = action;
   }else{
     $('login-form-result').innerHTML = '';
     $('action_name').value = '';
   }
   if(form){
     $('login-form-result').innerHTML = '<span style="color:green;">使用此功能,请先登录!</span>';
     $('form_name').value = form;
   }else{
     $('login-form-result').innerHTML = '';
     $('form_name').value = '';
   }
   win.showCenter();
}

function show_delete(id){
   delete_win.setTitle('删除帖子');
   delete_win.setSize(500,300);
   delete_win.getContent().innerHTML= $('delete-c').innerHTML;
   $('delete_post_id').value = id;
   delete_win.showCenter();
}

function show_subject(id){
   subject_win.setTitle('收入专栏');
   subject_win.setSize(400,200);
   subject_win.getContent().innerHTML= $('subject-c').innerHTML;
   $('subject_topic_id').value = id;
   subject_win.showCenter();
}
	
function register_show(){
   win.setTitle('用户注册');
   win.setSize(400,300);
   win.getContent().innerHTML= $('register-c').innerHTML;
   win.showCenter();
}

function user_nc(span,form,field,message,url){
if(Trim($(field).value) == ''){
  $(span).innerHTML = message;
  return;
}
new Ajax.Updater(span, url, {asynchronous:true, evalScripts:true, onComplete:function(request){eval(request.responseText);}, 
onLoading:function(request){$(span).innerHTML='<img src="/images/loading.gif" position="absmiddle"/><span style="color:#006699;">正在检测...</span>';}, parameters:Form.serialize(form)});
}


function preview_post(action){
  Element.show('preview_post');
  $('top_link').scrollIntoView(true);
  $('preview_button').disabled = true;
  $('post_button').disabled = true;
  $('preview_post').innerHTML = '<div class="loading_div"><img src="/images/loading.gif" position="absmiddle"/><span style="color:#006699;">正在生成预览...</span></div>';
  new Ajax.Updater('preview_post', '/index/'+action, {asynchronous:true, evalScripts:true, onComplete:function(request){new Effect.BlindDown('preview_post',{duration: 1});}, onSuccess:function(request){$('preview_button').disabled = false;$('post_button').disabled = false;}, parameters:Form.serialize('topic_form')});
}

function new_attach(){
  var count = parseInt($('attach_count').innerHTML);
  if(count<3){
    number = count + 1;
    $('attach_count').innerHTML = number;
   new Insertion.Bottom('new_attach_div', '<table> <tr height="30"><td colspan="2"><b>附件'+number
    +'</b> </td></tr><tr height="30"><td > <b>文件</b> </td><td>'
    +'<input id="attach_file'+number+'" name="attach_file'+number+'" size="30" type="file">'
    +'</td></tr> <tr valign="top"><td> <b>注解</b>  </td><td>'
    +' <textarea id="attach_desc'+number+'" name="attach_desc'+number+'" rows="3" cols="35"  size="40" style="width:300px;height:80px;"></textarea></td></tr></table><br/>');
  
   }else{
     $('attach_msg').innerHTML = '最多三个附件';
     Element.show('attach_msg');
   }
}

function new_pic(){
  var count = parseInt($('pic_count').innerHTML);
  if(count<5){
    number = count + 1;
    $('pic_count').innerHTML = number;
   new Insertion.Bottom('new_pic_div', '<table> <tr height="30"><td colspan="2"><b>图片'+number
    +'</b> </td></tr>'
    +'<tr height="30"><td > <b>文件</b> </td><td>'
    +'<input id="pic'+number+'" name="file[]" size="40" onchange="validate_pic(this)" type="file"></td></tr> '
    +'<tr height="30"><td > <b>名称</b> </td><td>'
    +'<input id="pic'+number+'_name" name="name[]" size="40" type="text"></td></tr> '
    +'<tr valign="top"><td> <b>描述</b>  </td><td>'
    +' <textarea id="pic'+number+'_desc" name="desc[]" style="width:400px;height:80px;"></textarea></td></tr></table><br/>');
   }else{
     $('pic_msg').innerHTML = '一次最多提交五个图片';
     Element.show('pic_msg');
   }
}


function validate_pic(pic){
   str = pic.value;
   name = str.substring(str.replace(/\\/g, '/').lastIndexOf('/')+1, str.lastIndexOf('.'));
   $(pic.id+'_name').value = name;
}

function file_name(file){
   str = file.value;
   name = str.substring(str.replace(/\\/g, '/').lastIndexOf('/')+1, str.lastIndexOf('.'));
   $('title').value = name;
}

function new_email(){
  var count = document.getElementsByClassName('input_email').length;
  if (count<8){
     new Insertion.Bottom('email_div','<br/><label id="email'+count+'L" style="display:none;"></label>'+
     '<input id="email'+count+'" type="text" name="email[]" class="input_email" value=""/><br/><span id="email'+count+'m"  class="errortxt"></span>'+
     '<br/><label id="email'+(count+1)+'L" style="display:none;"></label>'+
     '<input id="email'+(count+1)+'" type="text" name="email[]" class="input_email" value=""/><br/><span id="email'+count+'m"  class="errortxt"></span>');
  }else{
     $('email_hint').style.color = 'red';
  }
}

function before_submit(){
  if ($('input_area')){
  $('input_area').innerHTML = '<table width="100%" align="center"><tr><td><div style="color:#006699;text-align:center;">'+
   '<img src="/images/loading.gif" position="absmiddle"/> 正在提交...</div></td></tr></table>';
  }
}

function toggle_delete_attach(id,value){
  Element.toggle('delete_'+id,'cancel_'+id);
  $('input_'+id).value = value;
}

function add_attach_error(err){
   $('attach_msg').innerHTML += err;
   Element.show('attach_msg');
}

function LTrim(s){
  for(var i=0;i<s.length;i++)
  if(s.charAt(i)!=' ')
    return s.substring(i,s.length);
  return "";
}
    
function RTrim(s){
   for(var i=s.length-1;i>=0;i--)
    if(s.charAt(i)!=' ')
    return s.substring(0,i+1);
    return "";
}
   
function Trim(s){
  return RTrim(LTrim(s));
}

function link_submit(word){
  before_ajax_search();
  new Ajax.Updater('search_result', '/articles/ajax_search', {asynchronous:true, evalScripts:true, onComplete:function(request){new Effect.BlindDown('search_result');}, onSuccess:function(request){after_ajax_search();}, parameters:'classify='+$('classify').value+'&keyword='+word});
  void(0);
}

function init_blog_url(value){
  if (value.indexOf('live.com') != -1){
    $('url_hint').innerHTML = '例如: http://'+$('blog_domain').innerHTML+'.spaces.live.com';
  }else{
    $('url_hint').innerHTML = '例如: '+value+$('blog_domain').innerHTML;
  }
  
  if (value.indexOf('blogjava.net') != -1 || value.indexOf('cnblogs.com') != -1){
    Element.show('name_and_pwd');
  }else{
    $('name').value='';
    $('password').value='';
    Element.hide('name_and_pwd');
  }
  
  $('url').value = value;
}

function after_import_item(i){
  var count = parseInt($('imported_count').innerHTML);
  count = count + 1;
  var total = parseInt($('total_count').innerHTML);
  var percent = (count*100/total).toFixed(0);
  $('dark_bar').style.width = percent+'%';
  if(percent<86){
     $('count_bar').style.width = (100-percent)+'%';
  }
  $('imported_count').innerHTML = count
  $('imported_percent').innerHTML = percent+'%';
  form = $('blog_item_form_'+(i+1))
  if(form){
     form.onsubmit();
  }else{
     $('submit_import').innerHTML = '完成全部导入任务<br/><br/><button type="button"  onclick="window.location=\'/admin/blog_import\';">返回</button><br/><br/>';
  }
}

function show_loading_hint(id,hint){
  $(id).innerHTML='<img src="/images/loading.gif" position="absmiddle"/> '+hint;
}

function render_code(){
  dp.SyntaxHighlighter.HighlightAll("code",true,false,false,true,false);
  var elements = document.getElementsByName("code");
  for(var i = 0; i < elements.length; i++){
    Element.remove(elements[i]);
  }
}

wzgme 2006-11-05
希望把折叠也加上呀.
robbin 2006-11-05
折叠就没有必要了,华而不实的功能