我高兴的是,浏览器会设法使我们免受侵扰性文字的侵扰。 我不高兴的是,我会把一些东西带进浏览器上,使风格简单地看上像一个黑客座!
我使用了“带”;横跨和过;代表投案量,以便我能对“带”、“干).”、而不是“带”、“投入”和(由于“电传”原因)适用适当的搭配。 由于这一原因,国际独立实体希望向用户展示一种价值,这种价值应当得到保证,可以将他们置于警惕之下,而且至少是受到逮捕(如果他们不是完全躲避!) 。 MORE IE-CRAP!
感谢在此作解释的人:。 IE Browser Security: Appending “fakepath” to file path in content[type=“file”], I ve place con a small fixer-upper...
下面的法典有两条内容——它确定了一条灯塔,在高载田向Blur开火,并更新了一条带有清洁档案的元素,赢得了用户的护理。
// self-calling lambda to for jQuery shorthand "$" namespace
(function($){
// document onReady wrapper
$().ready(function(){
// check for the nefarious IE
if($.browser.msie) {
// capture the file input fields
var fileInput = $( input[type="file"] );
// add presentational <span> tags "underneath" all file input fields for styling
fileInput.after(
$(document.createElement( span )).addClass( file-underlay )
);
// bind onClick to get the file-path and update the style <div>
fileInput.click(function(){
// need to capture $(this) because setTimeout() is on the
// Window keyword this changes context in it
var fileContext = $(this);
// capture the timer as well as set setTimeout()
// we use setTimeout() because IE pauses timers when a file dialog opens
// in this manner we give ourselves a "pseudo-onChange" handler
var ieBugTimeout = setTimeout(function(){
// set vars
var filePath = fileContext.val(),
fileUnderlay = fileContext.siblings( .file-underlay );
// check for IE s lovely security speil
if(filePath.match(/fakepath/)) {
// update the file-path text using case-insensitive regex
filePath = filePath.replace(/C:\fakepath\/i, );
}
// update the text in the file-underlay <span>
fileUnderlay.text(filePath);
// clear the timer var
clearTimeout(ieBugTimeout);
}, 10);
});
}
});
})(jQuery);