Permalink
Browse files

Fixed to allow for IE8 browsers running in IE8 compatibility mode to …

…still display

IE8 compatibility tells the browser it is IE7 but the javascript still
works.
  • Loading branch information...
1 parent dc024d7 commit 7ddb810c889bfbdb8d87e04b0ab6cd7fde09338b @dantuck dantuck committed Aug 3, 2012
Showing with 649 additions and 600 deletions.
  1. +77 −29 chosen/chosen.jquery.js
  2. +1 −1 chosen/chosen.jquery.min.js
  3. +571 −570 coffee/chosen.jquery.coffee
View
@@ -47,7 +47,9 @@
SelectParser.prototype.add_option = function(option, group_position, group_disabled) {
if (option.nodeName === "OPTION") {
if (option.text !== "") {
- if (group_position != null) this.parsed[group_position].children += 1;
+ if (group_position != null) {
+ this.parsed[group_position].children += 1;
+ }
this.parsed.push({
array_index: this.parsed.length,
options_index: this.options_index,
@@ -95,6 +97,7 @@ Chosen source: generate output using 'cake build'
Copyright (c) 2011 by Harvest
*/
+
(function() {
var AbstractChosen, root;
@@ -178,9 +181,15 @@ Copyright (c) 2011 by Harvest
if (!option.disabled) {
option.dom_id = this.container_id + "_o_" + option.array_index;
classes = option.selected && this.is_multiple ? [] : ["active-result"];
- if (option.selected) classes.push("result-selected");
- if (option.group_array_index != null) classes.push("group-option");
- if (option.classes !== "") classes.push(option.classes);
+ if (option.selected) {
+ classes.push("result-selected");
+ }
+ if (option.group_array_index != null) {
+ classes.push("group-option");
+ }
+ if (option.classes !== "") {
+ classes.push(option.classes);
+ }
style = option.style.cssText !== "" ? " style=\"" + option.style + "\"" : "";
return '<li id="' + option.dom_id + '" class="' + classes.join(' ') + '"' + style + '>' + option.html + '</li>';
} else {
@@ -189,7 +198,9 @@ Copyright (c) 2011 by Harvest
};
AbstractChosen.prototype.results_update_field = function() {
- if (!this.is_multiple) this.results_reset_cleanup();
+ if (!this.is_multiple) {
+ this.results_reset_cleanup();
+ }
this.result_clear_highlight();
this.result_single_selected = null;
return this.results_build();
@@ -226,10 +237,14 @@ Copyright (c) 2011 by Harvest
break;
case 13:
evt.preventDefault();
- if (this.results_showing) return this.result_select(evt);
+ if (this.results_showing) {
+ return this.result_select(evt);
+ }
break;
case 27:
- if (this.results_showing) this.results_hide();
+ if (this.results_showing) {
+ this.results_hide();
+ }
return true;
case 9:
case 38:
@@ -270,18 +285,19 @@ Chosen source: generate output using 'cake build'
Copyright (c) 2011 by Harvest
*/
+
(function() {
var $, Chosen, get_side_border_padding, root,
- __hasProp = Object.prototype.hasOwnProperty,
- __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor; child.__super__ = parent.prototype; return child; };
+ __hasProp = {}.hasOwnProperty,
+ __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
root = this;
$ = jQuery;
$.fn.extend({
chosen: function(options) {
- if ($.browser.msie && ($.browser.version === "6.0" || $.browser.version === "7.0")) {
+ if ($.browser.msie && ($.browser.version === "6.0" || ($.browser.version === "7.0" && document.documentMode === 7))) {
return this;
}
return this.each(function(input_field) {
@@ -299,7 +315,7 @@ Copyright (c) 2011 by Harvest
__extends(Chosen, _super);
function Chosen() {
- Chosen.__super__.constructor.apply(this, arguments);
+ return Chosen.__super__.constructor.apply(this, arguments);
}
Chosen.prototype.setup = function() {
@@ -435,7 +451,9 @@ Copyright (c) 2011 by Harvest
}
if (!this.pending_destroy_click && !target_closelink) {
if (!this.active_field) {
- if (this.is_multiple) this.search_field.val("");
+ if (this.is_multiple) {
+ this.search_field.val("");
+ }
$(document).click(this.click_test_action);
this.results_show();
} else if (!this.is_multiple && evt && (($(evt.target)[0] === this.selected_item[0]) || $(evt.target).parents("a.chzn-single").length)) {
@@ -522,7 +540,9 @@ Copyright (c) 2011 by Harvest
this.choice_build(data);
} else if (data.selected && !this.is_multiple) {
this.selected_item.removeClass("chzn-default").find("span").text(data.text);
- if (this.allow_single_deselect) this.single_deselect_control_build();
+ if (this.allow_single_deselect) {
+ this.single_deselect_control_build();
+ }
}
}
}
@@ -562,7 +582,9 @@ Copyright (c) 2011 by Harvest
};
Chosen.prototype.result_clear_highlight = function() {
- if (this.result_highlight) this.result_highlight.removeClass("highlighted");
+ if (this.result_highlight) {
+ this.result_highlight.removeClass("highlighted");
+ }
return this.result_highlight = null;
};
@@ -643,7 +665,9 @@ Copyright (c) 2011 by Harvest
Chosen.prototype.search_results_mouseover = function(evt) {
var target;
target = $(evt.target).hasClass("active-result") ? $(evt.target) : $(evt.target).parents(".active-result").first();
- if (target) return this.result_do_highlight(target);
+ if (target) {
+ return this.result_do_highlight(target);
+ }
};
Chosen.prototype.search_results_mouseout = function(evt) {
@@ -700,11 +724,15 @@ Copyright (c) 2011 by Harvest
Chosen.prototype.results_reset = function() {
this.form_field.options[0].selected = true;
this.selected_item.find("span").text(this.default_text);
- if (!this.is_multiple) this.selected_item.addClass("chzn-default");
+ if (!this.is_multiple) {
+ this.selected_item.addClass("chzn-default");
+ }
this.show_search_field_default();
this.results_reset_cleanup();
this.form_field_jq.trigger("change");
- if (this.active_field) return this.results_hide();
+ if (this.active_field) {
+ return this.results_hide();
+ }
};
Chosen.prototype.results_reset_cleanup = function() {
@@ -733,9 +761,13 @@ Copyright (c) 2011 by Harvest
this.choice_build(item);
} else {
this.selected_item.find("span").first().text(item.text);
- if (this.allow_single_deselect) this.single_deselect_control_build();
+ if (this.allow_single_deselect) {
+ this.single_deselect_control_build();
+ }
+ }
+ if (!(evt.metaKey && this.is_multiple)) {
+ this.results_hide();
}
- if (!(evt.metaKey && this.is_multiple)) this.results_hide();
this.search_field.val("");
if (this.is_multiple || this.form_field_jq.val() !== this.current_value) {
this.form_field_jq.trigger("change", {
@@ -777,7 +809,7 @@ Copyright (c) 2011 by Harvest
};
Chosen.prototype.winnow_results = function() {
- var found, option, part, parts, regex, regexAnchor, result, result_id, results, searchText, startpos, text, zregex, _i, _j, _len, _len2, _ref;
+ var found, option, part, parts, regex, regexAnchor, result, result_id, results, searchText, startpos, text, zregex, _i, _j, _len, _len1, _ref;
this.no_results_clear();
results = 0;
searchText = this.search_field.val() === this.default_text ? "" : $('<div/>').text($.trim(this.search_field.val())).html();
@@ -800,7 +832,7 @@ Copyright (c) 2011 by Harvest
} else if (option.html.indexOf(" ") >= 0 || option.html.indexOf("[") === 0) {
parts = option.html.replace(/\[|\]/g, "").split(" ");
if (parts.length) {
- for (_j = 0, _len2 = parts.length; _j < _len2; _j++) {
+ for (_j = 0, _len1 = parts.length; _j < _len1; _j++) {
part = parts[_j];
if (regex.test(part)) {
found = true;
@@ -862,7 +894,9 @@ Copyright (c) 2011 by Harvest
if (!this.result_highlight) {
selected_results = !this.is_multiple ? this.search_results.find(".result-selected.active-result") : [];
do_high = selected_results.length ? selected_results.first() : this.search_results.find(".active-result").first();
- if (do_high != null) return this.result_do_highlight(do_high);
+ if (do_high != null) {
+ return this.result_do_highlight(do_high);
+ }
}
};
@@ -881,12 +915,18 @@ Copyright (c) 2011 by Harvest
var first_active, next_sib;
if (!this.result_highlight) {
first_active = this.search_results.find("li.active-result").first();
- if (first_active) this.result_do_highlight($(first_active));
+ if (first_active) {
+ this.result_do_highlight($(first_active));
+ }
} else if (this.results_showing) {
next_sib = this.result_highlight.nextAll("li.active-result").first();
- if (next_sib) this.result_do_highlight(next_sib);
+ if (next_sib) {
+ this.result_do_highlight(next_sib);
+ }
+ }
+ if (!this.results_showing) {
+ return this.results_show();
}
- if (!this.results_showing) return this.results_show();
};
Chosen.prototype.keyup_arrow = function() {
@@ -898,7 +938,9 @@ Copyright (c) 2011 by Harvest
if (prev_sibs.length) {
return this.result_do_highlight(prev_sibs.first());
} else {
- if (this.choices > 0) this.results_hide();
+ if (this.choices > 0) {
+ this.results_hide();
+ }
return this.result_clear_highlight();
}
}
@@ -929,13 +971,17 @@ Copyright (c) 2011 by Harvest
var stroke, _ref;
stroke = (_ref = evt.which) != null ? _ref : evt.keyCode;
this.search_field_scale();
- if (stroke !== 8 && this.pending_backstroke) this.clear_backstroke();
+ if (stroke !== 8 && this.pending_backstroke) {
+ this.clear_backstroke();
+ }
switch (stroke) {
case 8:
this.backstroke_length = this.search_field.val().length;
break;
case 9:
- if (this.results_showing && !this.is_multiple) this.result_select(evt);
+ if (this.results_showing && !this.is_multiple) {
+ this.result_select(evt);
+ }
this.mouse_on_container = false;
break;
case 13:
@@ -969,7 +1015,9 @@ Copyright (c) 2011 by Harvest
$('body').append(div);
w = div.width() + 25;
div.remove();
- if (w > this.f_width - 10) w = this.f_width - 10;
+ if (w > this.f_width - 10) {
+ w = this.f_width - 10;
+ }
this.search_field.css({
'width': w + 'px'
});
Oops, something went wrong.

0 comments on commit 7ddb810

Please sign in to comment.