Index: src/wp-admin/js/user-profile.js
===================================================================
--- src/wp-admin/js/user-profile.js	(revision 33623)
+++ src/wp-admin/js/user-profile.js	(working copy)
@@ -47,7 +47,7 @@
 			.addClass( $pass1[0].className )
 			.data( 'pw', $pass1.data( 'pw' ) )
 			.val( $pass1.val() )
-			.on( 'input propertychange', function () {
+			.on( 'keyup', function () {
 				if ( $pass1Text.val() === currentPass ) {
 					return;
 				}
@@ -62,7 +62,7 @@
 			generatePassword();
 		}
 
-		$pass1.on( 'input propertychange pwupdate', function () {
+		$pass1.on( 'keyup pwupdate', function () {
 			if ( $pass1.val() === currentPass ) {
 				return;
 			}
@@ -163,7 +163,8 @@
 		 * This fixes the issue by copying any changes from the hidden
 		 * pass2 field to the pass1 field, then running check_pass_strength.
 		 */
-		$pass2 = $('#pass2').on( 'input propertychange', function () {
+		$pass2 = $('#pass2');
+		$pass2.on( 'keyup', function () {
 			if ( $pass2.val().length > 0 ) {
 				$pass1.val( $pass2.val() );
 				$pass2.val('');
@@ -244,7 +245,7 @@
 		var $colorpicker, $stylesheet, user_id, current_user_id,
 			select = $( '#display_name' );
 
-		$('#pass1').val('').on( 'input propertychange pwupdate', check_pass_strength );
+		$('#pass1').val('').on( 'keyup pwupdate', check_pass_strength );
 		$('#pass-strength-result').show();
 		$('.color-palette').click( function() {
 			$(this).siblings('input[name="admin_color"]').prop('checked', true);
