diff --git a/core/modules/picture/picture.js b/core/modules/picture/picture.js
new file mode 100644
index 0000000..1c5d75b
--- /dev/null
+++ b/core/modules/picture/picture.js
@@ -0,0 +1,11 @@
+if (Drupal && jQuery) {
+  // only load if Drupal and jQuery are defined, so we can respond to
+  // ajax requests.
+  (function ($) {
+    Drupal.behaviors.picture = {
+      attach: function (context) {
+        window.picturefill();
+      }
+    };
+  })(jQuery);
+}
diff --git a/core/modules/picture/picture.module b/core/modules/picture/picture.module
index e5a66dd..bb0fff4 100644
--- a/core/modules/picture/picture.module
+++ b/core/modules/picture/picture.module
@@ -101,6 +101,14 @@ function picture_menu() {
  * Implements hook_library_info().
  */
 function picture_library_info() {
+  $libraries['picture.ajax'] = array(
+    'title' => t('Picture AJAX support'),
+    'website' => 'http://drupal.org/node/1836860',
+    'version' => VERSION,
+    'js' => array(
+      drupal_get_path('module', 'picture') . '/picture.js' => array('type' => 'file', 'weight' => -10, 'group' => JS_DEFAULT),
+    ),
+  );
   $libraries['picturefill'] = array(
     'title' => t('Picturefill'),
     'website' => 'http://drupal.org/node/1775530',
@@ -110,6 +118,7 @@ function picture_library_info() {
     ),
     'dependencies' => array(
       array('system', 'matchmedia'),
+      array('picture', 'picture.ajax'),
     ),
   );
   return $libraries;
diff --git a/core/modules/picture/picturefill/picturefill.js b/core/modules/picture/picturefill/picturefill.js
index 8df8eb9..a8db895 100644
--- a/core/modules/picture/picturefill/picturefill.js
+++ b/core/modules/picture/picturefill/picturefill.js
@@ -122,5 +122,6 @@
   }
   else if (w.attachEvent) {
     w.attachEvent('onload', w.picturefill);
+    w.attachEvent('onresize', w.picturefill);
   }
 })(this);
