include-pattern-feedback

(Difference between revisions)

Jump to: navigation, search
(Objects and Browser Behavior)
(Objects and Browser Behavior)
Line 18: Line 18:
   //Works only for linked include-pattern definition at microformats.org
   //Works only for linked include-pattern definition at microformats.org
   //Requires Simon Willison's getElementsBySelector()
   //Requires Simon Willison's getElementsBySelector()
-
   //  and standard IE workaround for addEventListener()
+
   //  and normal IE workaround for addEventListener()
   addEventListener( window, 'load', function() {
   addEventListener( window, 'load', function() {
     var myIncludes = document.getElementsBySelector( 'a[href].include' ), a, e;
     var myIncludes = document.getElementsBySelector( 'a[href].include' ), a, e;

Revision as of 08:39, 23 October 2006

Contents

Include Pattern Feedback

Feedback about include-pattern.

Objects and Browser Behavior

Over at Yahoo! Local, we were using the object include pattern for all our hReviews on business detail pages and review listings. That is, until we realized that Safari and Internet Explorer both try to embed the entire page with every OBJECT call. (Firefox correctly recognizes that it's a local object and doesn't reload anything.)

On a page with 20+ reviews, this means a substantial increase in load time and memory consumption. As a result of this (bad) browser behavior, we removed the objects entirely.

Any suggestions for workarounds or modifications to the pattern?

-- AndyBaio 29 Jun 2006

Can you use the hyperlink option with DHMTL/Ajax to perform replacements in advanced browsers? (Simon Willison's getElementsBySelector() may be helpful)

 <a href="#id" class="include" title=""></a>

with something like:

 //Works only for linked include-pattern definition at microformats.org
 //Requires Simon Willison's getElementsBySelector()
 //  and normal IE workaround for addEventListener()
 addEventListener( window, 'load', function() {
   var myIncludes = document.getElementsBySelector( 'a[href].include' ), a, e;
   for( var i=0; a=myIncludes[i]; i++ ) if (a.href.charAt(0)=='#') {
     e = document.getElementsBySelector( a.href )[0].cloneNode( true );
     a.parentNode.replaceChild( e, a );
   }
 })

--RichHall 00:51, 23 Oct 2006 (PDT)

Hyperlink Include - Screen Reader Testing

Some concerns have been raised over the implications using empty hyperlinks may have on assistive devices such as screen readers. One concern is that an empty link may be read out, partially read out or result in some other confusing scenario for the user.

In response, a test page consisting of a number of empty hyperlinks in the style suggested by the pattern has been created. A 'good' result is that none of the links be read out.

Test Results: JAWS 7.0 with Firefox 1.5/Win

Tested by Frances Berriman 2006-07-21.

Conclusion: the hyperlink include pattern presented no usability issues for this screen reader.

Proprietary attribute

HTML tidy on the test page gives:

Warning: <a> proprietary attribute "data"

The W3C validator is similarly unimpressed.

AndyMabbett 14:22, 22 Oct 2006 (PDT)

Use href

To clarify, links on the test page should be changed to use the href attribute as described at include-pattern (without href attributes, the elements probably won't register as hyperlinks, but anchors). Set title="" to fix empty link behavior for many assistive devices. --RichHall 23:31, 22 Oct 2006 (PDT)

Unclear status

It's not clear, either from the main Wiki page or include-pattern, whether this is an agreed standard, a draft, or just a proposal. AndyMabbett 03:14, 18 Oct 2006 (PDT)

include-pattern-feedback was last modified: Wednesday, December 31st, 1969

Views