How do you decide when to use pure CSS, include jQuery or go as far as hacking the core of an existing jQuery plugin? User interface expert Marc Grabanski will tune your mind to approach building new interfaces by explaining some of the logical thinking and patterns behind how interfaces are developed at his company, MJG International.
3. When building web interfaces, we have
to make decisions on what to use, when.
4. When building web interfaces, we have
to make decisions on what to use, when.
•When do I use jQuery?
•When do I use CSS Only?
•When do I use a plugin?
•How do I choose a plugin?
50. Interactive map function renderMap(el, lat, lng) {
if (GBrowserIsCompatible()) {
var map = new GMap2(el);
map.addControl(new GSmallMapControl());
map.addControl(new GMapTypeControl());
map.setCenter(new GLatLng(lat, lng), 13);
var point = new GLatLng(lat, lng);
var baseIcon = new GIcon();
baseIcon.image = base+"/img/icons/map-pin.png";
baseIcon.shadow = base+"/img/icons/map-pin-shadow.png";
baseIcon.iconSize = new GSize(41, 34);
baseIcon.shadowSize = new GSize(41, 34);
baseIcon.iconAnchor = new GPoint(15, 32);
baseIcon.infoWindowAnchor = new GPoint(9, 2);
map.addOverlay(new GMarker(point, baseIcon));
}
}
51. Interactive map function renderMap(el, lat, lng) {
if (GBrowserIsCompatible()) {
var map = new GMap2(el);
map.addControl(new GSmallMapControl());
map.addControl(new GMapTypeControl());
map.setCenter(new GLatLng(lat, lng), 13);
var point = new GLatLng(lat, lng);
var baseIcon = new GIcon();
baseIcon.image = base+"/img/icons/map-pin.png";
baseIcon.shadow = base+"/img/icons/map-pin-shadow.png";
baseIcon.iconSize = new GSize(41, 34);
baseIcon.shadowSize = new GSize(41, 34);
baseIcon.iconAnchor = new GPoint(15, 32);
baseIcon.infoWindowAnchor = new GPoint(9, 2);
map.addOverlay(new GMarker(point, baseIcon));
}
}
and tabs.
$("#unit-types").live('click', function(){
$(this).addClass('active');
$("#map-description").removeClass('active')
.next().hide();
$(this).next().fadeIn();
});
52.
53. jQuery core and CSS are great for
adding spices to websites, but
what about more complex
administration panels?
65. jQuery UI Class Quick Tip
Add hover by grabing buttons with
.ui-state-default and attach hover class.
.ui-state-default
66. jQuery UI Class Quick Tip
Add hover by grabing buttons with
.ui-state-default and attach hover class.
.ui-state-hover
67. jQuery UI Class Quick Tip
Add hover by grabing buttons with
.ui-state-default and attach hover class.
.ui-state-default .ui-state-hover
68. jQuery UI Class Quick Tip
Add hover by grabing buttons with
.ui-state-default and attach hover class.
.ui-state-default .ui-state-hover
$(“.ui-state-default”).hover(
function(){ $(this).addClass(“ui-state-hover”); }),
function(){ $(this).removeClass(“ui-state-hover”); })
);
69. jQuery UI Class Quick Tip
Add hover by grabing buttons with
.ui-state-default and attach hover class.
.ui-state-default .ui-state-hover
$(“.ui-state-default”).hover(
function(){ $(this).addClass(“ui-state-hover”); }),
function(){ $(this).removeClass(“ui-state-hover”); })
);
More info:
http://www.filamentgroup.com/lab/styling_buttons_and_toolbars_with_the_jquery_ui_css_framework/
93. Plugin Checklist
•API is like jQuery core
•Buzz / mentions in blogs
•Documentation
•CSS makes sense to you
94. Plugin Checklist
•API is like jQuery core
•Buzz / mentions in blogs
•Documentation
•CSS makes sense to you
•Author is committed to support
95. Plugin Checklist
•API is like jQuery core
•Buzz / mentions in blogs
•Documentation
•CSS makes sense to you
•Author is committed to support
•or.. Jörn made it http://bassistance.de/
102. Identifying Good Plugin Support
•Google Groups, mailing lists
•Comments are ok when plugin is new
103. Identifying Good Plugin Support
•Google Groups, mailing lists
•Comments are ok when plugin is new
•Does author modify plugin based on feedback?
104. Identifying Good Plugin Support
•Google Groups, mailing lists
•Comments are ok when plugin is new
•Does author modify plugin based on feedback?
•Code repository, when was last commit?
107. Identifying Good Plugin Community
•Buzz - Plugin Lists, Ajaxian, etc
•Does the author make update announcements?
108. Identifying Good Plugin Community
•Buzz - Plugin Lists, Ajaxian, etc
•Does the author make update announcements?
•Depreciated features well-documented.
109. Identifying Good Plugin Community
•Buzz - Plugin Lists, Ajaxian, etc
•Does the author make update announcements?
•Depreciated features well-documented.
Identify that the author is communicating.