먼저 효과를 살펴보겠습니다.
Hallo.js는 jQuery UI를 기반으로 하는 간단한 서식 있는 텍스트 웹 편집기이며 HTML5 contentEditable을 사용하여 WYSIWYG를 구현합니다. 목표는 TinyMCE나 Aloha Editor와 같이 오늘날 매우 인기 있는 편집기를 대체하는 것이 아니라 개발자에게 더 간단하고 즐거운 사용자 편집 경험을 제공하는 것입니다.
Hallo.js는 Henri Bergius가 IKS 프로젝트를 위해 개발한 무료 소프트웨어로 CoffeeScript를 사용하여 개발되었으며 MIT 라이센스 계약을 따르며 GitHub에서 호스팅됩니다.
사용방법
1. 프로젝트에 jQuery, jQuery UI 및 Rangy 라이브러리를 도입해야 합니다.
<script src="js/jquery.min.js"></script> <script src="js/jquery-ui.min.js"></script> <script src="js/rangy-core.js"></script>
편집기 툴바는 jQuery UI 테마를 사용하므로 필요에 맞게 테마를 맞춤설정할 수도 있습니다. 도구 모음 아이콘 글꼴은 Font Awesome을 기반으로 합니다. 스타일이 지정된 도구 모음이 데모에 나타나면, hallotoolbar 클래스에 일부 CSS(예: 배경 및 테두리)를 추가할 수도 있습니다.
<link rel="stylesheet" href="/path/to/your/jquery-ui.css"> <link rel="stylesheet" href="/path/to/your/font-awesome.css">
Hello.js를 소개합니다
<script src="hallo.js"></script>
플러그인 호출은 매우 간단합니다
jQuery('p').hallo();
태그 편집 기능을 끌 수도 있습니다
jQuery('p').hallo({editable: false});
Hallo 자체는 선택한 DOM 요소만 편집 가능하게 만들 수 있으며 서식 지정 도구는 제공하지 않습니다. 플러그인을 로딩하여 Hallo를 초기화하는 형식입니다. 볼드체 및 이탤릭체 플러그인과 같은 간단한 플러그인도 있습니다.
jQuery('.editable').hallo({ plugins: { 'halloformat': {} } });
이 예에서는 굵게 및 기울임꼴과 같은 기능을 제공하는 간단한 서식 지정 플러그인을 만듭니다. 원하는 만큼 좋은 플러그인을 가질 수 있으며 필요한 경우 그중에서 선택할 수 있습니다.
Hallo에는 인스턴스화 시 설정할 수 있는 옵션이 더 많습니다. 설명서 hallo.coffee 파일을 참조하세요.
이벤트 방식
할로는 통합과 소집에 도움이 되는 이벤트를 진행하고 있습니다. jQuery 바인딩을 사용하여 구독할 수 있습니다.
플러그인
플러그인 작성
Hallo 플러그인은 일반 jQuery UI 플러그인을 작성하는 데 사용됩니다.
Hallo가 로드되면 해당 장치의 활성화된 모든 플러그인도 로드되고 몇 가지 추가 옵션이 전달됩니다.
간단한 플러그인은 다음과 같습니다.
# Formatting plugin for Hallo # (c) 2011 Henri Bergius, IKS Consortium # Hallo may be freely distributed under the MIT license ((jQuery) -> jQuery.widget "IKS.halloformat", boldElement: null options: uuid: '' editable: null _create: -> # Add any actions you want to run on plugin initialization # here populateToolbar: (toolbar) -> # Create an element for holding the button @boldElement = jQuery '<span></span>' # Use Hallo Button @boldElement.hallobutton uuid: @options.uuid editable: @options.editable label: 'Bold' # Icons come from Font Awesome icon: 'icon-bold' # Commands are used for execCommand and queryCommandState command: 'bold' # Append the button to toolbar toolbar.append @boldElement cleanupContentClone: (element) -> # Perform content clean-ups before HTML is sent out )(jQuery)
위 내용은 Hallo.js 리치 텍스트 편집기에 대한 자세한 소개입니다. 모든 분들의 학습에 도움이 되기를 바랍니다.