<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://vi-access.wiki/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3ACommon.js</id>
	<title>MediaWiki:Common.js - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://vi-access.wiki/index.php?action=history&amp;feed=atom&amp;title=MediaWiki%3ACommon.js"/>
	<link rel="alternate" type="text/html" href="https://vi-access.wiki/index.php?title=MediaWiki:Common.js&amp;action=history"/>
	<updated>2026-07-28T19:26:46Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.44.0</generator>
	<entry>
		<id>https://vi-access.wiki/index.php?title=MediaWiki:Common.js&amp;diff=78&amp;oldid=prev</id>
		<title>Garrett: Attempt to make forms generated by Page Forms more accessible.</title>
		<link rel="alternate" type="text/html" href="https://vi-access.wiki/index.php?title=MediaWiki:Common.js&amp;diff=78&amp;oldid=prev"/>
		<updated>2025-07-27T23:43:46Z</updated>

		<summary type="html">&lt;p&gt;Attempt to make forms generated by Page Forms more accessible.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;/* Any JavaScript here will be loaded for all users on every page load. */&lt;br /&gt;
&lt;br /&gt;
// === Page Forms label‑for‐input accessibility fix ===&lt;br /&gt;
( function () {&lt;br /&gt;
  $( function () {&lt;br /&gt;
    // Only run on a Page Forms form&lt;br /&gt;
    if ( !$( &amp;#039;#pfForm&amp;#039; ).length ) {&lt;br /&gt;
      return;&lt;br /&gt;
    }&lt;br /&gt;
    // For each field, hook up its visible label to its input/textarea&lt;br /&gt;
    $( &amp;#039;#pfForm .pf-field&amp;#039; ).each( function () {&lt;br /&gt;
      var $field = $( this );&lt;br /&gt;
      var $label = $field.find( &amp;#039;.pf-field-label, .oo-ui-labeledElement-label&amp;#039; ).first();&lt;br /&gt;
      if ( !$label.length ) {&lt;br /&gt;
        return;&lt;br /&gt;
      }&lt;br /&gt;
      var labelText = $label.text().trim();&lt;br /&gt;
      var $input = $field.find( &amp;#039;input, textarea&amp;#039; ).first();&lt;br /&gt;
      if ( !$input.length || !labelText ) {&lt;br /&gt;
        return;&lt;br /&gt;
      }&lt;br /&gt;
      // Ensure an id on the input&lt;br /&gt;
      var id = $input.attr( &amp;#039;id&amp;#039; );&lt;br /&gt;
      if ( !id ) {&lt;br /&gt;
        id = &amp;#039;pf-&amp;#039; + labelText.replace( /\W+/g, &amp;#039;-&amp;#039; ).toLowerCase();&lt;br /&gt;
        $input.attr( &amp;#039;id&amp;#039;, id );&lt;br /&gt;
      }&lt;br /&gt;
      // Link the &amp;lt;label&amp;gt; and add aria‑label&lt;br /&gt;
      $label.attr( &amp;#039;for&amp;#039;, id );&lt;br /&gt;
      $input.attr( &amp;#039;aria-label&amp;#039;, labelText );&lt;br /&gt;
    } );&lt;br /&gt;
  } );&lt;br /&gt;
}() );&lt;/div&gt;</summary>
		<author><name>Garrett</name></author>
	</entry>
</feed>