사용자 정의 항목을 하나 생성하고, 해당 항목의 기본값을 %SIGNATURE% 로 설정하시면 됩니다.

스케치북에서만 테스트되었습니다. 그리고 스케치북에서만 작동할 가능성이 높습니다.

 

테스트: http://extend.kr/board_MUqy28

다운로드: extkr_signature.zip

 

Thanks to 윤삼님.

https://xetown.com/index.php?mid=lakepark&category=5779&document_srl=526822

Atachment
첨부
  • profile
    맞아요 이런 걸 하고 싶었었어요.
    크흐흑 감동입니다!!
  • ?
    여러 회원분들이 함께 하니 이런 결과물이 나오는군요 다들 고생 많으셨어요 ㅎㅎ
  • profile
    너무너무 감사합니다. 바로 제가 운영중인 사이트에 후원가입에도 적용해야 겠어요^^
    혹, 가능하다면 서명 reload 도 있으면 좋을것 같아요..  서명 실패시 다시 작성해야 하는 번거로움이 있을 않을까 해서요
  • profile
    이런 능력자들....
  • ?
    서명을 지우는 기능이있으면 좋겠습니다.
  • ?
    그리고 모바일은 다른게시판을 사용하는데 오류가생기네요 ㅠㅠ
  • profile

    서명이 필요한곳이 있었는데 덕분에 해결되었습니다.

    저한테도 적용해 보다 코멘트를 참고하여 약간 수정하여 보았습니다. 

    ExtendKR님께 먼저 양해를 구해봅니다. 수정하여서 죄송합니다.

    ExtendKR 밥상에 숟가락 얻저봅니다.

    사용자 정의 입력항목 이름에 "서명" 또는 "signature"로

    SIGNATURE.png

    reload와 초기화 기능을 넣어보았습니다. 

    ExtendKR님의 애드온 파일중 signature.js 의 내용을 아래와 같이 수정해보세요.

    스케치북에서 테스트되었습니다.

     

    (function($){
    
    $(".bd_wrt .et_vars tr").each(function(){
    var tr = $(this);
    
    if (tr.find('>th').text().toLowerCase().trim() == 'signature' || tr.find('>th').text().toLowerCase().trim() == '서명')
    {
    
    var signature_input = tr.find("input[name^='extra_vars']");
     signature_input.hide();
    
    signature_input.wrap( "<div class='signature'></div>" );
    
     var signature = $("<canvas class='pad' width='370' height='100'></canvas>");
    signature.css({
    "border": "1px solid #AAAAAA",
    "width": "370px",
    "height": "100px",
    "overflow": "hidden"
    });
    
    signature_input.after(signature);
    
    var clearButton =$("<span class='clearButton'>초기화</span>");
    clearButton.css({
     "position":"relative",
     "top":"5px",
     "left":"10px",
    "background-color": "#cb8126",
    "border-radius":".3125em",
    "padding":"5px 10px",
    "margin-top":"10px",
    "color":"#fff",
    "vertical-align":"top"
    });
    signature.after(clearButton);
    
    signature.parent().signaturePad({drawOnly: true, drawBezierCurves: true, lineTop: 200});
    
    //서명 위에 이미지로 가리기
    var signature_img;
    
    if (signature_input.val().indexOf("data\\:image"))
    {
    signature_img =$("<img src='" + signature_input.val() + "' />");
    signature_img.css({
    "position":"absolute",
    "border": "1px solid #AAAAAA",
    });
    signature.before(signature_img);
    }
    
    clearButton.click(function(){
    signature_img.hide();
    });
    
    signature.click(function(){
    signature_input.val(signature[0].toDataURL());
    });
    }
    });
    
    
    $(".rd_body .et_vars tr").each(function(){
    var tr = $(this);
    if (tr.find('>th').text().toLowerCase().trim() == 'signature' || tr.find('>th').text().toLowerCase().trim() == '서명')
    {
    signature_data = tr.find('td').html();
    tr.find('td').html("<img src='" + signature_data + "' />");
    }
    });
    
    })(jQuery);

     

  • profile profile
    감사합니다~
    참고해서 버전업해도 될까요?
  • profile profile
    물론입니다. 동작이 잘 된다면요..^^;
  • profile profile
    자료 감사합니다.
    초기화 한글이 깨져나와서 UTF 봄으로 바꿔서 하니까 한글 잘나오네요~~
  • profile
    모바일에서도 지원되는건가요?
  • ?
    와..멋지네요...잘 활용하면 엄청난 기능이 될듯 싶네요. 좋은자료 감사합니다.