diff options
| -rw-r--r-- | src/scenario/Scenario.js | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/src/scenario/Scenario.js b/src/scenario/Scenario.js index 57fece6e..8bcc86e2 100644 --- a/src/scenario/Scenario.js +++ b/src/scenario/Scenario.js @@ -189,10 +189,10 @@ function browserTrigger(element, type) { } if (msie) { switch(element.type) { - case 'radio': - case 'checkbox': - element.checked = !element.checked; - break; + case 'radio': + case 'checkbox': + element.checked = !element.checked; + break; } element.fireEvent('on' + type); } else { @@ -211,8 +211,14 @@ function browserTrigger(element, type) { * * To work around this we instead use our own handler that fires a real event. */ -_jQuery.fn.trigger = function(type) { - return this.each(function(index, node) { - browserTrigger(node, type); - }); -}; +(function(fn){ + var parentTrigger = fn.trigger; + fn.trigger = function(type) { + if (/(click|change)/.test(type)) { + return this.each(function(index, node) { + browserTrigger(node, type); + }); + } + return parentTrigger.apply(this, arguments); + }; +})(_jQuery.fn); |
