07 common j query tasks.pptx

22
COMMON JQUERY TASKS

Transcript of 07 common j query tasks.pptx

Page 1: 07 common j query tasks.pptx

COMMON JQUERY TASKS

Page 2: 07 common j query tasks.pptx

One of the most common things we do with jQuery is manipulate images

Page 3: 07 common j query tasks.pptx

To swap images, you change the src attribute • Example: $('#someImg').mouseover(function () { $('#someImg').prop('src', 'newImg.png');});

Page 4: 07 common j query tasks.pptx

You can preload your images to avoid a visual delay by populating a fake object's src property

var tempImg = new Image();tempImg.src = 'images/car1.png';• Simply setting its source will ask for the image and cache

it

Page 5: 07 common j query tasks.pptx

Use the hover event for an image rollover effect • Example: var btn = $('#goButton');btn.hover(function () { btn.prop('src', 'images/goBtnOn.png'); }, function () { bnt.prop('src', 'images/goBtnOff.png'); }});• Remember that any element's event handler can affect

any other element; it doesn't have to be the same one

Page 6: 07 common j query tasks.pptx

The web is all about going from page to page

Page 7: 07 common j query tasks.pptx

We can make some real magic happen when jQuery alters the links

• Select links • Reassign their location • Stop them from going there • Open links in other windows

Page 8: 07 common j query tasks.pptx

Selecting links • Quick quiz … what do each of these select? $('a') – ___________________$('#mainNav a') – ___________________$('a[href^="http://"]') – ________________$('a[href$=".pdf"]') – ___________________$('a[href*="tic.com"]') – __________________• Once selected, you can each() through the resulting links

Page 9: 07 common j query tasks.pptx

You can change a link's destination • Change the href attribute $('#someLink').prop('href',"http://tic.com/props");

Page 10: 07 common j query tasks.pptx

You can intercept the navigation with ... preventDefault();

$('#id').click(function(e) { $('#theDiv').show(); e.preventDefault();});

Page 11: 07 common j query tasks.pptx

If you open external links in a new window, you won't lose eyeballs

•  Links with a target of _blank will open in a new window

• $('a[href^="http:"]')• .not('[href*="tic.com"]')• .attr('target','_blank');

Page 12: 07 common j query tasks.pptx

How to create a new window or tab open(URL, windowName, properties)

… or … var windowHandle = open(URL, windowName, properties)

• Opens URL in a window called "windowName" •  If there's no window called "windowName", a new one is

created • But if "windowName" is already existing, the URL is opened in

that window.

Page 13: 07 common j query tasks.pptx

Windows have many properties

•  height & width (pixels) •  left & top (pixels) • menubar (yes|no) •  toolbar (yes|no) •  location (yes|no) •  status (yes|no) •  resizable (yes|no) •  scrollbars (yes|no) •  titlebar (yes|no)

'height=200,width=400,left=100,top=100,menubar=yes,toolbar=no,location=no,titlebar=no'

Page 14: 07 common j query tasks.pptx

Hang on to your new window's reference so you can remotely control it •  var helpWin = open('help.html', '_blank'); •  helpWin.close(); •  helpWin.blur(); //Pop under other windows •  helpWin.focus(); //Pop on top •  helpWin.moveBy(x,y); •  helpWin.moveTo(x,y); •  helpWin.resizeBy(x,y); •  helpWin.resizeTo(x,y); •  helpWin.scrollBy(x,y); •  helpWin.scrollTo(x,y);

Page 15: 07 common j query tasks.pptx

JQUERY PLUG-INS

Page 16: 07 common j query tasks.pptx
Page 17: 07 common j query tasks.pptx

How to use plugins 1.  Download the JavaScript and CSS files into your site 2.  Add <link> and <script> tags 3.  Edit your HTML structure 4.  Call the plug-in function

Page 18: 07 common j query tasks.pptx

Dropdown menus are a great example of improving UI with jQuery 1.  Add links to your html

•  Putting them in nested <li>s or <div>s make them easy to select

2.  Style the top links to display side-by-side and the sub-links to display under the top-level

3.  Add jQuery to display submenus when the top level is clicked

• We'll drill into each on the next few pages •  Important! This exercise is not for you to memorize or

even completely understand immediately. It is for you to get an idea of the strategy of UX with jQuery

Page 19: 07 common j query tasks.pptx

Menus: Add links to your html <ul id="nav">    <li><a href="#">Parent 01</a></li>    <li><a href="#">Parent 02</a>        <ul>            <li><a href="#">Item 01</a></li>            <li><a href="#">Item 02</a></li>            <li><a href="#">Item 03</a></li>        </ul>        <div class="clear"></div>    </li>    <li><a href="#">Parent 03</a>     <ul>         <li><a href="#">Item 04</a></li>         <li><a href="#">Item 05</a></li>         <li><a href="#">Item 06</a></li>         <li><a href="#">Item 07</a></li>     </ul>              <div class="clear"></div>    </li>    <li><a href="#">Parent 04</a></li></ul><div class="clear"></div>

Page 20: 07 common j query tasks.pptx

Style the elements so they appear properly .clear {clear:both;} /* top-level menu */#nav li {        float:left;         width:100px;         background:#ccc;         position:relative;}

/* submenu */#nav ul {    display:none; }

Page 21: 07 common j query tasks.pptx

Create jQuery to make them appear/disappear $(document).ready(function () {     $('#nav li').hover(        function () { //show its submenu            $('ul', this).slideDown(100);        },         function () { //hide its submenu            $('ul', this).slideUp(100);                 }    ); });

Page 22: 07 common j query tasks.pptx

tl;dr •  There are many ways jQuery can make your pages

visually pleasing and easier to use • Mouseovers, preloading images improve performance • We can reassign links to do our bidding • Stop links from forwarding with 'return false;' • Create pop-up windows and control them with JavaScript •  Typical jQuery UX attack: 1.  Add normal HTML elements 2.  Style them to appear properly 3.  Write jQuery to show/hide/position them