Jump to content

XAOPT

User
  • Posts

    73
  • Joined

  • Last visited

Posts posted by XAOPT

  1. Сделать счётчик на этапе формерования таблицы нифига не гемор. Это во-первых.

    Во-вторых, ЖС позволяет перебрать все объекты с определённым классом. Задайте каждой ячейке одного столбца таблицы одинаковый класс и вуаля.

    Испытываете сложности с перебором? Возьмите, например, jquery и читайте мануал

  2. С кроссбраузерностью, обработкой близости края броузера, работой в нескольких режимах (загорелся-потух, загорелся пока не уберут мышу и т.п.), следованием за мышкой когда ею двигают в рамках объекта, красивой "опаситью" и др. графическими вкусняшками?

    Нет, не безумно долго. Но и далеко не по щелчку пальцев.

  3. Ппц тут ассы обитают. "Пять минут отсилы". гы =)

    Вз_тултип обладает своими минусами, конечно, но вцелом неплохое быстрое решение. Самый обидный минус: когда быстро двигаешь мышкой по объектам с привязанным к ним тултипам, и останавливаешь курсор на одном из них, зачастую всплывает тултип другого объекта.

    Поправьте блок конфига в коде:

    /===================  GLOBAL TOOLTIP CONFIGURATION  =========================//
    var tt_Debug = true // false or true - recommended: false once you release your page to the public
    var tt_Enabled = true // Allows to (temporarily) suppress tooltips, e.g. by providing the user with a button that sets this global variable to false
    var TagsToTip = true // false or true - if true, HTML elements to be converted to tooltips via TagToTip() are automatically hidden;
    // if false, you should hide those HTML elements yourself

    // For each of the following config variables there exists a command, which is
    // just the variablename in uppercase, to be passed to Tip() or TagToTip() to
    // configure tooltips individually. Individual commands override global
    // configuration. Order of commands is arbitrary.
    // Example: onmouseover="Tip('Tooltip text', LEFT, true, BGCOLOR, '#FF9900', FADEIN, 400)"

    config. Above = false // false or true - tooltip above mousepointer
    config. BgColor = '#eee' // Background colour (HTML colour value, in quotes)
    config. BgImg = '' // Path to background image, none if empty string ''
    config. BorderColor = '#99A2AC'
    config. BorderStyle = 'solid' // Any permitted CSS value, but I recommend 'solid', 'dotted' or 'dashed'
    config. BorderWidth = 1
    config. CenterMouse = false // false or true - center the tip horizontally below (or above) the mousepointer
    config. ClickClose = false // false or true - close tooltip if the user clicks somewhere
    config. ClickSticky = false // false or true - make tooltip sticky if user left-clicks on the hovered element while the tooltip is active
    config. CloseBtn = false // false or true - closebutton in titlebar
    config. CloseBtnColors = ['#990000', '#FFFFFF', '#DD3333', '#FFFFFF'] // [Background, text, hovered background, hovered text] - use empty strings '' to inherit title colours
    config. CloseBtnText = ' X ' // Close button text (may also be an image tag)
    config. CopyContent = true // When converting a HTML element to a tooltip, copy only the element's content, rather than converting the element by its own
    config. Delay = 0 // Time span in ms until tooltip shows up
    config. Duration = 0 // Time span in ms after which the tooltip disappears; 0 for infinite duration, < 0 for delay in ms _after_ the onmouseout until the tooltip disappears
    config. Exclusive = false // false or true - no other tooltip can appear until the current one has actively been closed
    config. FadeIn = 50 // Fade-in duration in ms, e.g. 400; 0 for no animation
    config. FadeOut = 50
    config. FadeInterval = 30 // Duration of each fade step in ms (recommended: 30) - shorter is smoother but causes more CPU-load
    config. Fix = null // Fixated position, two modes. Mode 1: x- an y-coordinates in brackets, e.g. [210, 480]. Mode 2: Show tooltip at a position related to an HTML element: [ID of HTML element, x-offset, y-offset from HTML element], e.g. ['SomeID', 10, 30]. Value null (default) for no fixated positioning.
    config. FollowMouse = true // false or true - tooltip follows the mouse
    config. FontColor = '#000'
    config. FontFace = 'Tahoma,Geneva,sans-serif'
    config. FontSize = '12px' // E.g. '9pt' or '12px' - unit is mandatory
    config. FontWeight = 'normal' // 'normal' or 'bold';
    config. Height = 0 // Tooltip height; 0 for automatic adaption to tooltip content, < 0 (e.g. -100) for a maximum for automatic adaption
    config. JumpHorz = false // false or true - jump horizontally to other side of mouse if tooltip would extend past clientarea boundary
    config. JumpVert = true // false or true - jump vertically "
    config. Left = false // false or true - tooltip on the left of the mouse
    config. OffsetX = 14 // Horizontal offset of left-top corner from mousepointer
    config. OffsetY = 8 // Vertical offset
    config. Opacity = 100 // Integer between 0 and 100 - opacity of tooltip in percent
    config. Padding = 3 // Spacing between border and content
    config. Shadow = false // false or true
    config. ShadowColor = '#C0C0C0'
    config. ShadowWidth = 5
    config. Sticky = false // false or true - fixate tip, ie. don't follow the mouse and don't hide on mouseout
    config. TextAlign = 'left' // 'left', 'right' or 'justify'
    config. Title = '' // Default title text applied to all tips (no default title: empty string '')
    config. TitleAlign = 'left' // 'left' or 'right' - text alignment inside the title bar
    config. TitleBgColor = '' // If empty string '', BorderColor will be used
    config. TitleFontColor = '#FFFFFF' // Color of title text - if '', BgColor (of tooltip body) will be used
    config. TitleFontFace = '' // If '' use FontFace (boldified)
    config. TitleFontSize = '' // If '' use FontSize
    config. TitlePadding = 2
    config. Width = 0 // Tooltip width; 0 for automatic adaption to tooltip content; < -1 (e.g. -240) for a maximum width for that automatic adaption;
    // -1: tooltip width confined to the width required for the titlebar
    //======= END OF TOOLTIP CONFIG, DO NOT CHANGE ANYTHING BELOW ==============//

    В частности вот эти строки:

    config. BgColor			= '#eee'	// Background colour (HTML colour value, in quotes)
    config. BorderColor = '#99A2AC'
    config. FontFace = 'Tahoma,Geneva,sans-serif'
    config. FontSize = '12px' // E.g. '9pt' or '12px' - unit is mandatory
    config. Opacity = 100 // Integer between 0 and 100 - opacity of tooltip in percent

  4. Этот контейнер, кстати, будет создаваться динамически при нажатии на switch, скажем, или он будет создан статически под каждой строкой?

    Можно по-моему его один раз создать (хоть где) и просто аппендить в нужное место.

  5. Если правильно понял задачу, самое тривиальное решение:

    <script>
    function insMe(obj)
    {
    var bBox = document.getElementById('bBox');
    bBox.style.display == 'block' ? bBox.style.display = 'none' : bBox.style.display = 'block';
    bBox.value = obj.parentNode.parentNode.id;
    }
    </script>

    <table border=1>
    <tr id='zxc1'>
    <td><input type='button' value='1' onClick='insMe(this)'></td>
    <td>sdf</td>
    <td>sdf</td>
    </tr>
    <tr id='zxc2'>
    <td><input type='button' value='2' onClick='insMe(this)'></td>
    <td>sdf</td>
    <td>sdf</td>
    </tr>
    </table>

    <input type='text' id='bBox' style='display: none'>

  6. Пф.. сейчас я попробую обрисовать предыдущий разговор на отстранённом примере.

    Автор: нужно ли пользоваться гаечными ключами?

    Юзер: ДА

    Автор: нафига? ведь проще руками!

    Юзер: не согласен! это гемор!

    Автор: ну давайте приведу задачу: Поковыряйтесь в носу с помощью гаечного ключа, а я потом опишу минусы.

    Резюме: на решение вашей задачи самым простым методом нужна одна минута. Естесственно, "ковыряться в носу гаечным ключом" не стоит там, где это Глупо. Давайте поставим задачу сравнимую с "откручиванием болта".

    Мой пример задачи: реализовать псевдо-фреймовую структуру на ЖС. Ну то есть экран разделён на блоки (словно фреймами). Разделители блоков можно двигать, можно складывать одним нажатием и т.п. Ну представьте рабочее поле Дримвивера, Флеша или любого другого редаткора. Вот что-то в этом роде.

  7. по мелочам, бросившимся в глаза в первые 15 секунд:

    не привязанная ни к чему кнопка "Войти". Хотя бы по правому края контента думаю надо кинуть. Плюс у неё с задним фоном какая-то беда, больше нигде вроде такой цвет не встречается. В общем очень мозолит глаз, надо полдумать как вылечить.

    Возможно, слишком большой радиус скругления боксов контента. Если с основными блоками норм, то про кнопку проголосовать и кнопку выбора города хочется сказать "сосиск0".

    При переключении закладок слева, можно было бы повыпендриваться с плавным уменьшением и увеличением опасити бекграунда основного блока (при смене на другой цвет).

    + я бы убрал переключение контента при наведении мышки на боксы в левой части, оставив чисто онклик. Во время чтения самопроизвольно можно навести мышку на пункт меню и контент переключится. Имхо наф.

    Выпадающие менюшки не очень интуитивны в плане принадлежности к родительской ссылке. Т.е. при наведении на "Голосование" блок оснащён галочкой "в стиле прототайпа", что намного приятнее глазу и связывает интуитивно блоки. Не настаиваю на таком решении для всех пунктов менюшки, но в этом ключе.

  8. Потому что мышление, на котором базируется сам фреймворк, искажено по сути.

    Вам в религию надо, а не с фреймвёрками разбираться.

    Не вижу взаимосвязи между мышлением кодера и фреймвёрком. Юзать чужой код и соображать головой что делаешь - можно.

    Писать меньше - не значит лучше.

    Про экономию времени я, кажется, говорил. Посмотрел бы я, как бы вы решили за три дня (хотя бы) задачи, которые решаются с помощью extjs (например) за сутки. Имея в качестве стартовой площадки нуль кода.

    Резюме: считаю что истинный смысл топа - флуд и кичь.

  9. Пользователи все уши мне прожужжали, чтоб я как-то переделала глюк, который происходит при ответе с цитированием (на некоторых форумах я тоже встречала такое неудобство), там в ответ с цитатой вкладывается еще и предыдущий ответ...

    Нефиг целиком цитировать посты, где уже есть цитата)

    :-D

  10. Согласен, легче написать свое оптимизированное, чем пользовать то что написал до тебя с кучей лишних ф-ций...

    А вам эти лишние функции жизнь портят? Если с помощью фреймвёрка можно решить задачу десятью строками, то имхо не стоит париться над тем, что файл фреймвёрка весит пару-тройку сотен килобайт. Особенно когда речь идёт о лоакльных системах, где траф вообще не аргумент. Когда от каждой минуты времени прогрммиста зависит сколько буханок хлеба он сможет купить.

    Естесственно, если вы подросток и вам срать на своё время, можно повыпендриваться над кодом. А когда важны скорости и результат - разговор другой.

    На любой тематической конференции вы обязательно хоть единожды услишите старую-добрую догму: "Не изобретайте. Улучшайте."

    А что, действительно, шли бы нафиг эти профессионалы со своими суждениями... Да ?))))

    Особенно меня выносят люди, которые утверждают, что лучше писать самому, только потмоу что ленятся читать документацию или вовсе не знают английского языка (сталкивался не раз). Убивать об стену.

  11. По сабжу можно ещё вспомнить о старом добром трюке: таблица внутри ячейки другой таблицы. у внешней задан бекгранд (в цвет рамки), у внутренней - селлспейсинг 1 и бекграунд ячеек. по-моему крутотень :-D

  12. В своём коде нашёл глюк в функциональности: слова разбиваются ничуть не по пробелу, а где попало. Поэтому преобразовал в:

    <style>
    DIV {float: left; margin: 10px; padding: 10px; width: 150px; text-align: justify; border: solid 1px #000}
    </style>

    <div id='colonL'>sdf</div>
    <div id='colonR'> sdf</div>

    <script>
    var myText = 'The patterns used in RegExp can be very simple, or very complicated, depending on what you~re trying to accomplish. To match a simple string like "Hello World!" is no harder then actually writing the string, but if you want to match an e-mail address or html tag, you might end up with a very complicated pattern that will use most of the syntax presented in the table below.';

    var reg = new RegExp("^(.){" + parseInt(myText.length/2) + "}(.*?)(\s+?)");
    var result = reg.exec(myText);
    var breaker = result[0].length - 1;

    var parts = Array( myText.slice(0, breaker), myText.slice( breaker ,myText.length) );

    document.getElementById('colonL').innerHTML = parts[0];
    document.getElementById('colonR').innerHTML = parts[1];

    </script>

    2 Ялекс:

    расширять dom-модель через свойство innerHTML допустимо, но считается крайне дурным тоном. Да и не всегда панацея. Например вот такая шутка не прокатит:

    el.innerHTML= "<tabler><tr><td></td></tr>";
    el.innerHTML += "<tr><td></td></tr></table>";

    имхо лучше сразу привыкать пользоваться предусмотренными для этого функциями работы с деревом элементов.

  13. Примерно так, В общем:

    <style>
    DIV {float: left; margin: 10px; padding: 10px; width: 150px; text-align: justify; border: solid 1px #000}
    </style>

    <div id='colonL'>sdf</div>
    <div id='colonR'> sdf</div>

    <script>
    var myText = 'The patterns used in RegExp can be very simple, or very complicated, depending on what you~re trying to accomplish. To match a simple string like "Hello World!" is no harder then actually writing the string, but if you want to match an e-mail address or html tag, you might end up with a very complicated pattern that will use most of the syntax presented in the table below.';

    var parts = Array( myText.slice(0, myText.length/2), myText.slice( myText.length/2,myText.length) );


    document.getElementById('colonL').innerHTML = parts[0];
    document.getElementById('colonR').innerHTML = parts[1];
    </script>

    Если требуется разбиение на значительное количество кусков. Скажем >3, то надо ввести цикл с инкрементированием точки начала слайса и проверкой длины строки.

  14. Прошу прощения, не грамотно оформил мессагу. Я не обсуждал текст в цитате, а использовал её как введение к своим словам, адресуемым автору. Соре.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy