azazel75 / kaiten Goto Github PK
View Code? Open in Web Editor NEWThis project forked from abstractmatter/kaiten
Kaiten is a jQuery plug-in which offers a new navigation model for web applications.
Home Page: http://kaitenbrowser.com
This project forked from abstractmatter/kaiten
Kaiten is a jQuery plug-in which offers a new navigation model for web applications.
Home Page: http://kaitenbrowser.com
KAITEN 1.2, 2012-03-17 ------------------------------------------------------------------------------------------------------------------------------ Tested with : Firefox: 4+ Safari: 5+ Chrome: 12+ Opera: 11+ Internet Explorer: 8+ General ------- + Added : return false in connector' getData prevent the creation of a new panel + Upgrade to jQuery 1.7 + Upgrade to jQuery UI 1.8.16 + Removed Scrollability + Renamed the global object jKaiten to Kaiten and all JS files accordingly + Removed version numbers from jQuery file names to simplify upgrades + Demos : added Boilerpipe connector demo and the optimal widths demo Kaiten ------ + Removed Scrollability script handling + IE8 compatibility + Added the "fallbackConnector" option : a default connector that will be used when clicking on a link for which no connector has been found + Refactored "_create" to improve code readability + Removed the "animsFiringRate" option + Keyboard navigation : inverted the action of the "+" (decrease columns count) and "-" (increase columns count) keys Panel ----- + Fixed a bug in _insertHTML: if a markup with script tags is inserted without a panel header or a panel body div, the scripts are executed in the global context instead of the panel DOM element context + toggleLoader : when hiding the loader, move it to the panel so that it cannot be removed from DOM accidentally + fixed a small bug + Fixed a small bug (_insertHTML) : some HTML responses from the server were not correctly displayed in the panel body + Removed Scrollability + load: better error reporting + Rewrote/simplified how the destruction of a panel/group of panels can be discarded/restarted ; the "beforedestroy" callback (see panel options) can return false or the "kpanelbeforedestroy" event handler can use preventDefault() after the callback has returned, a second call to kpanel('destroy') with proper arguments provides a way to force the panel to be destroyed or to retry the action at the origin of the destruction + Reload : added a "keepChildren" parameter for refreshing panel content without removing the panels @ right Breadcrumb ---------- Templater --------- CSS --- + Print : added @media print rules to print the focused panel + Breadcrumb : added a max-width in list items and text-overflow "ellipsis" for the links texts + Removed Scrollability special rules + Panel : added webkit-overflow-scrolling on panel-body + Panel : added text-overflow "ellipsis" for the panel title + Breadcrumb home icon is now 32x32px + Body and k-window: -webkit-tap-highlight-color added to neutralize the highlight on iOS + Removed webkit translate3d because of incompatibility with webkit-overflow-scrolling + Items (navigables, clickables, ...) : tail's arrow for navigables only KAITEN 1.1, 2011-10-07 ------------------------------------------------------------------------------------------------------------------------------ Tested with : Firefox: 4 => 7 Safari: 5.0.5 => 5.1 Chrome: 12.0.742.100 => 14.0.835.202 Opera: 11.11 => 11.50 Internet Explorer: 9 General ------- Upgrade to jQuery 1.6.2 Kaiten ------ + IE9 support + Fixed a small bug : kTitle should not be set when clicking on a link with no text + toggleOptions : moved title click handler code to titlebar click handler + Fixed a small bug : clicking on a focused panel should not try to set focus again + setColumnsCount : fixed snapping formula + Added "k-newtab" css class => navigables loaded in a new tab + Disabled keyboard navigation for touchscreen devices + Added downloadable elements, downloaded via an iframe + Added base path to Kaiten's state (the path to the folder containing "jkaiten.js") + _setPanelFocus : check if document.activeElement exist before trying to do something with it (IE9 support) + Fixed a keyboard navigation bug : conflict between ctrl-C (copy) and "normal" "C" key press + Links with href="javascript:..." are not handheld by Kaiten + Small optim : topBarHeight is calculated out of _computeDimensions + We don't assume no more that Kaiten's container is always the whole window + _computeDImensions : use k-window width / height to calculate panel layouts + Integrated Ben Alman jQuery resize event plugin (http://benalman.com/projects/jquery-resize-plugin/) + Adjustment : no more Math.floor on columns width calculations, let the browsers round those values + Added new "html.dom" connector to retrieve panel content from a (hidden) DOM element + Various code changes/improvments thanks to Julien Gonzalez + "html.page" connector : data can be sent to the url + Keyboard navigation : discard if the active element is an input + New tabs : window.open(url, name) is called with a sanitized name (IE9 support) + Renamed panelOptionsHTML to defaultPanelTitleBarOptions + Rewrote load, remove and removeChildren to allow the panels loading/destruction to be discarded, see Panel changes + Added $.fn.reverse, a utility function that reverse the order of a jQuery elements collection + load : you can directly pass a string or a jQuery object + connectors : can now be grouped into collection, with "global" "connectable", "init" and "destroy" functions + options > connectors : changed type to Array, which values can be connectors and/or connectors collections + Added the connectors/connectors-templates.js file, to provide a basis that should help developers create connectors/collection of connectors Panel ----- + toggleLoader : loader is now moved to the desired container before toggling + toggleLoader : can add a loader to any panel element (e.g. a block within the panel body) + toggleLoader : disable/enable overflow-y + Disabled autofocus for touchscreen devices + setTitle : use jQuery to strip tags and decode entities + Removed padding from width computations, thanks to the "box-sizing" CSS property + Removed layout mode switching capability, the "panelscroll" layout mode cannot exist because the title bar position must always be fixed + Improved load : better error reporting when loading fails + Improved load : handles local (filesystem) AJAX calls, allowing Kaiten to work without any web server + newTab : window.open(url, name) is called with a sanitized name (IE9 support) + Renamed optionsHTML to titleBarOptions + Titlebar options are now opened by a double-click + Titlebar options : by default, insert a "remove panel" clickable item + Fixed a bug : when a loader function returns a jQuery element, the events/data are lost when reloading the panel + Added "auto" optimal width : allow the panel to occupy the remaining free space on the screen + Rewrote the destroy function : destroying a panel automatically destroys its children panels + Added a way to discard the destruction of a panel/group of panels ; the "beforedestroy" callback (see panel options) can return false or the "kpanelbeforedestroy" event handler can use preventDefault() after the callback has returned, a call to kaiten('execPanelDestroyAction') provides a way to performs the action at the origin of the destruction otherwise a call to kaiten('discardPanelDestroyAction') must be made to discard the action at the origin of the destruction + Rewrote load + reload : removed the keepChildren argument + setPositionAndWidth is now a private method + Added the "onrefresh" option, providing a way for the developer to perform some actions when the panel content has to be refreshed, without reloading the whole panel content Breadcrumb ---------- + Added ctrl-click to open target panel in a new tab + Changed document title generation : using char "โ" as separator + Changed the appearances of the visible items : removed the white arrows for blue background images, changed markup, rewrote toggleVisibility + Added pop() Templater --------- + Changed "summary" markup + Removed _$body, _$header, _$block, _$elem - pass "type" parameter to _elem instead + Added JsDoc comments + Renamed _navigation to _navigable + _navigable : changed the strip tags method (use jQuery instead of a regular expression) + Added _downloadable CSS --- + Set "#menu-container" height to avoid small bug in Opera + Changed ".summary" rules + Changed k-panel box-sizing to "border-box" + Added width:100%; and height:100%; to "html" and "body" + Changed tool buttons to fit the title bar's height, changed images/sprites-32.png + Set "#k-breadcrumb li a" width to "auto" (IE9 support) + Added background-color fallbacks for all gradients + Added .clickable .tail class + Changed .items .label "word-wrap: break-word;" to "white-space:nowrap;" + Added a color for the items being k-active and k-focus at the same time + Reset p to font-size:1.0em + Breadcrumb items : changed the visibility rules (use of blue background images) KAITEN 1.0.2 CHANGE LOG ------------------------------------------------------------------------------------------------------------------------------ Current release : v1.0.2 Release date : 2011-06-17 Kaiten ------ + Rewrote remove() and removeChildren(), added code to prevent an empty slider when all visible panels have been removed + removeChildren() : added "andSelf" argument + Changed topbar mask creation + Layout : removed _toggleLayout, layout is automatically disabled when slider is hidden + Markup : the options container becomes the application menu, added new tab button + Click event delegation only for navigables in header and body + Changed the touchscreen detection method (uses ontouchstart, not the user agent) + Integrated Joe Hewitt scrollability (http://joehewitt.github.com/scrollability) + conditional async js loading + Optimized/rewrote _onType + Added jQuery plugin getPanel() + Added custom HTML options for all panels, displayed when title is clicked + Removed jquery.easing.1.3.js, easing functions are part of jquery-ui-1.8.11.custom.min.js + Removed mouseover handlers for navigable elements, use CSS instead + Add real focus on keyboard-selected navigation item + Added "bodylayout" event, used when custom panel options are displayed + Added version number and copyright in the options dialog (footer) + Simplify event delegation selectors for connectables <a> elements + Panel toolbar : rearranged icons, added remove et reload panel Panel ----- + Removed left/right toolbars width calculation, set fixed width via CSS (72px) + toggleLoader simplified : compute loader position using position().top + Cosmetics : if columnsCount=1, hide maximize button during animation + Added custom HTML options, displayed when title is clicked + Added _doNavItemsLayout + Changed titlebar <a> tools to buttons in order to simplify event delegation for connectables <a> elements + Added layout mode switching capability (default or panelscroll) + Added code to automatically create a body when no header/body has been found in the loaded content + Toolbar : rearranged icons, added remove et reload panel Breadcrumb ---------- + Miscalculation of the application menu width fixed Templater --------- + Added low-level functions _elem and _$elem + Added .jQuery('panel.header') and .jQuery('panel.body') + Corrected : ID attribute is not set if no ID is provided in the config object + Added : can set an ID on search forms + Changed "summary" items markup and config: we use "label" (config.label) and "info" (config.info) instead of "h2" (config.title) and "p" (config.text) + Changed quick search form markup, the magnifier is a search button CSS --- + Added "mask-20" class + The options container becomes the application menu + toolbar left/right : width set to 72px (32 + 16+4 + 16+4) + Renamed "header" and "body" classes to "panel-..." classes + Removed border-top from "items:first-child" + Added border-bottom to "summary" items + Use pseudo-class ":hover" instead of ".k-hover" + Added ".border-box-sizing", ".centered-text" + Added rules for the options dialog footer + Changed quick search form layout + Overflow:hidden for ".panel-options" and ".panel-header" + Set mask z-index to 101, options dialog to 102 KAITEN 1.0.1 CHANGE LOG ------------------------------------------------------------------------------------------------------------------------------ Current release : v1.0.1 Release date : 2011-05-31 General ------- Upgrade to jQuery 1.6.1 Opera is now supported Kaiten ------ + load() can accept function or string as parameter + Removed refresh + newTab : moved code to Panel + _doNavItemLayout (mouseover + focus w keyboard) + Clear navitem focus when set panel focus + Renamed findConnector to findLoaderData + _setOption : added connectors registration there + _setOption : added optionsSelector change + load() now returns the jQuery panel object + Added a dedicated handler for "no-nav" elements w stopPropagation + _onClickLink : ignore <a href="#"> elements + Selectors : add ":visible" to ".navigable" + Fixed newTab: incorrect code! + Keyboard navigation : prevent error when clicking right arrow when content is not fully set Panels ------ + Tools definitions + click event delegation have moved to Kaiten + Removed the delay between appending new content and removing the panel loader + Removed refresh() + Added afterload, afterlayout and beforedestroy options + newTab : moved code from Kaiten + Removed prev and next + Bug fixed : making a new content loading before the end of the animation did not load the new content + Added setPositionAndWidth for _doLayout + Bug fixed : keyboard navigation broken when reusing child panel CSS --- + Renamed classes : k-hover, k-active, k-focus + Added gradient for IE (yes we can) + Renamed nav-arrow class to tail and changed its dimensions (30x30) + Added Opera gradients + Modified .ajax-loader : height:100% + Added <button> cursor style
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.