Ответы пользователя по тегу HTML
  • Как научиться писать чистый код,читабельный и хорошо оформленный HTML,CSS,JS?

    shqn
    @shqn
    По поводу JS. Когда-то я писал жуткий спагетти-код, который выглядел, я думаю, до боли знакомо каждому, кто учил JS и jQuery:

    // main.js
    $(function() {
        $(".someselector1").click(function() {
             // Что-то
        });
    
        $(".someselector2").change(function() {
             // Что-то
        });
    
        $(".someselector3").width($(".header").first().width());
    });


    И все было хорошо, потому что поддерживать или что-то менять в этом коде не приходилось. Сайт сдавался, приходил следующий. Но я всегда чувствовал, что можно как-то иначе. Странно, но первое озарение мне пришло случайно, когда я увидел на хабре мини-обзор новой CMS и полез посмотреть, что это за зверь. Зашел на сайт и заодно решил заглянуть в исходники js: www.fork-cms.com/frontend/core/js/frontend.js. Помню, как мне понравилось тогда, как все выглядит. Чисто, красиво, методы не перегружены кучей инструкций, ответственность каждого метода прозрачна и понятна (стоит сказать, что тогда этот файлик выглядел немного иначе, сейчас уже заметно подрос). Я просто взял эту структуру кода на фронтенд и такую же на бэкенд для самописной CMS.

    Потом что-то менял в ней, потом выкинул вовсе. Попробовал разные MVC фреймворки, потом что-то еще было. В текущем проекте ядром клиентского кода служит незамысловатый Base.js. В общем суть в том, что вариться в своей каше очень опасно. Нужно смотреть, как оно у других, пробовать модные штуки и решать, подходят они вам или нет. А чтобы понять, насколько хорош ваш код, посмотрите, насколько он гибок, насколько сложно его масштабировать, высок или порог входа для того, чтобы понять структура кода и что происходит и т.д. и т.п. Думаю, то же самое отчасти справедливо и для HTML с CSS.
    Ответ написан
    Комментировать
  • Как сохраняют содержимое wysiwyg редактора в БД?

    shqn
    @shqn
    Ну, обычно такой редактор рендерится на какой-нибудь textarea и постоянно с ней синхронизирует свое содержимое, так что отправка на сервер происходит как обычно.
    Ответ написан
    Комментировать
  • Почему это не работает?

    shqn
    @shqn
    Это называется variable hoisting.

    Допустим ваш код был бы таким:

    var foo = "bar";
    var baz = function() {
        alert(foo);
        var foo = "bar2";
    };
    baz();


    , то выполнялся бы он так:

    var foo = "bar";
    var baz = function() {
        var foo; // Переменная "всплыла"
        alert(foo);
        foo = "bar2";
    };
    baz();
    Ответ написан
    1 комментарий