مسیرراه‌ها
ASP.NET MVC
              نظرات مطالب
              استفاده از Froala WYSIWYG Editor در ASP.NET
              قطعه کد  برای fullscreen این ادیتور:
              fullscreen: {
                                      title: 'FullScreen',
                                      icon: {
                                          type: 'font',
                                          value: 'fa fa-external-link'
                                      },
                                      callback: function (editor) {  
                                          if (editor.$box.hasClass("froala-editor-full-screen")) {
                                              editor.$box.removeClass("froala-editor-full-screen");
                                              editor.$box.appendTo(editor.editorParent);
                                          }
                                          else {
                                              if (editor.editorParent === undefined)
                                                  editor.editorParent = editor.$box.parent();
                                              editor.$box.addClass("froala-editor-full-screen");
                                              editor.$box.appendTo("body");
                                          }
                                          editor.focus();
                                      }
                                  },
              و کلاس css مربوطه :
              .froala-editor-full-screen {
                  position: fixed !important;
                  z-index: 10000;
                  top: 0;
                  bottom: 0;
                  left: 0;
                  right: 0;
                  background-color: #fff;
              }
              
                  .froala-editor-full-screen div.f-placeholder {
                      height: 100% !important;
                  }

              نظرات مطالب
              اعتبار سنجی سمت کاربر wysiwyg-editor ها در ASP.NET MVC
              مرسی بابت این پست، راه حل جدید و کارآمدی یاد گرفتم.
              پیش از این برای ادیتور‌های Froala به نحو زیر عمل می‌کردم:

              var editor = $("#content"); // textArea id
              var text = editor.editable("getText"); // gets plain text
              if(text.length < 1) {
                  alert('Post content cannot be empty');
                  editor.focus();
                  return false;
              }

              یک سوال: با استفاده از راه حلی که مطرح کردید، چطور میشه ادیتور رو در صورت وجود خطا Focus کرد و یا کلاس CSS خاصی بدان اضافه کرد؟
              اشتراک‌ها
              ادیتور Trix

              A WYSIWYG editor developed by the folks at Basecamp and creators of Ruby on Rails. 1.0 has just dropped and introduces support for image galleries. 

              ادیتور Trix
              نظرات مطالب
              اعتبار سنجی سمت کاربر wysiwyg-editor ها در ASP.NET MVC
              در همان callback اعتبارسنجی (function (value, element, param به element در حال بررسی، دسترسی وجود دارد. اما اینجا کاربردی ندارد، چون مخفی است (تصویر اول). یعنی focus بر روی آن، یا تغییر CSS آن قابل مشاهده نخواهد بود. اما داخل همین رویداد گردان می‌توان نوشت:
              $(".froala-element").focus();
              $(".froala-element").css({"border-color": "red"});
              نظرات اشتراک‌ها
              تفاوت Bower و npm
              با توجه به این که در npm3 مشکل nested بودن وابستگی‌ها برطرف شده است، شاید بتوان گفت خیلی نیازی به استفاده همزمان از هر دو نباشد. ولی مطلبی که گاهی اوقات مورد غفلت قرار می‌گیرد این است که در صفحات به طور مستقیم به بسته‌های مورد نظر، آدرس‌دهی می‌شود مانند
              <head>
                  <link href="node_modules/normalize.css/normalize.css" rel="stylesheet" />
                  <link href="node_modules/font-awesome/css/font-awesome.min.css" rel="stylesheet" />
                  <link href="node_modules/froala-editor/css/froala_style.min.css" rel="stylesheet" />
                  <link href="node_modules/froala-editor/css/froala_editor.min.css" rel="stylesheet" />
              
                  <script src="node_modules/jquery/dist/jquery.min.js"></script>
                  <script src="node_modules/froala-editor/js/froala_editor.min.js"></script>
                  <script src="node_modules/froala-editor/js/languages/fa.js"></script>
              </head>
              در صورتی با یک task ساده ( برای انتقال بسته‌های اصلی مورد نیاز به پوشه دلخواه به طور مثال پوشه wwwroot/lib ) می‌توان مدیریت بهتری روی استفاده از این بسته‌ها داشت:
              module.exports = function (grunt) {
              
                  var developer = false;
                  var config = {
                      libPath: 'wwwroot/lib/',
                      nodePath: 'node_modules/',
              
                      getNodePackagePath: function (path) {
                          return this.nodePath + path;
                      },
                      getLibPath: function (path) {
                          return this.libPath + path;
                      }
                          }
              
                  grunt.initConfig({
                      pkg: grunt.file.readJSON('package.json'),
              
                      copy: {
                          jquery: {
                              files: [{
                                  cwd: config.getNodePackagePath('jquery/dist/'),
                                  expand: true,
                                  src: 'jquery.min*', dest: config.getLibPath('jquery/'),
                              }]
                          },
                          font_awesome: {
                              files: [
                                  {
                                      cwd: config.getNodePackagePath('font-awesome/'),
                                      expand: true,
                                      src: ['css/*.min.css', 'fonts/*'], dest: config.getLibPath('font-awesome/'),
                                      filter: 'isFile'
                                  },
                              ]
                          },
                          froala_editor: {
                              files: [
                                  {
                                      cwd: config.getNodePackagePath('froala-editor/'),
                                      expand: true,
                                      src: ['css/**/*.min.css', 'js/**', '!js/languages/*.js', 'js/languages/fa.js'], dest: config.getLibPath('froala-editor/')
                                  }
                              ]
                          },
                          normalizecss: {
                              files: [
                                  {
                                      cwd: config.getNodePackagePath('normalize.css/'),
                                      expand: true,
                                      src: 'normalize.css', dest: config.getLibPath('normalize.css/')
                                  }
                              ]
                          }
                      },
              
                      clean: {
                          lib: ['wwwroot/lib/']
                      },
                  });
              
                  grunt.loadNpmTasks("grunt-contrib-clean");
                  grunt.loadNpmTasks("grunt-contrib-copy");
              
                  grunt.registerTask("default", ['clean', 'copy']);
              };
              <head>
                  <link href="wwwroot/lib/normalize.css/normalize.css" rel="stylesheet" />
                  <link href="wwwroot/lib/font-awesome/css/font-awesome.min.css" rel="stylesheet" />
                  <link href="wwwroot/lib/froala-editor/css/froala_style.min.css" rel="stylesheet" />
                  <link href="wwwroot/lib/froala-editor/css/froala_editor.min.css" rel="stylesheet" />
              
                  <script src="wwwroot/lib/jquery/jquery.min.js"></script>
                  <script src="wwwroot/lib/froala-editor/js/froala_editor.min.js"></script>
                  <script src="wwwroot/lib/froala-editor/js/languages/fa.js"></script>
              </head>
              و از node_modules فقط به عنوان مخزن بسته‌ها استفاده شود، بخصوص زمانی که بسته‌هایی مانند grunt هم به صورت local نصب شوند که یک node_modules بلند بالا و سنگین خواهید داشت.