应用某些css样式后,fileupload-click事件未正确触发(在IE8上)
fileupload click event doesnt get fired properly after applying certain css styles (On IE 8)
我有以下
Asp.net标记
<div class="formSample">
<div class="uploadTest">
Choose File
<asp:FileUpload ID="uploadControl" runat="server" />
</div>
</div>
C级通过
.form样品
{
display: inline-block;
float: right;
width: 22em;
margin-top: 0.3em;
}
.上传测试
{
font-family: 'open_sansregular', Arial, Helvetica, sans-serif;
float: right;
overflow: hidden;
width: 9em;
text-align: center;
color: white;
font-size: 1em;
background: #22a0db;
cursor: pointer;
padding: 0.4em 0.2em 0.1em 0.3em;
margin: 0em 0em;
border-radius: 1em;
-webkit-border-radius: 1em;
-moz-border-radius: 1em;
-ms-border-radius: 1em;
-o-border-radius: 1em;
}
Javascript
function upLoadOnClick() {
document.getElementById('ctl00_ContentPlaceHolder1_uploadControl').parentNode.click();
}
document.getElementById('ctl00_ContentPlaceHolder1_uploadControl').onClick = upLoadOnClick;
这里的问题是,当我按下右手边的控件时,只有弹出窗口出现,但当我按下中间或左边的控件时浏览窗口不会启动。此问题仅发生在IE8中。有什么建议吗?
提前感谢
首先,出于安全原因,大多数(可能是所有现代)浏览器都不允许以编程方式单击file
输入,因此您的javascript将无法按您希望的方式工作。要显示选择文件弹出窗口,用户必须自己单击控件。您的代码在没有javascript的情况下,在Chrome和Firefox中似乎都能正常工作。这是一把小提琴。
众所周知,file
输入很难跨浏览器进行样式化。我认为最常见的方法是使文件输入不可见,并将其覆盖在其他元素上,这些元素按照您希望的方式进行样式设置。这是另一个小提琴的例子。
相关文章:
- Joomla Gantry Framework ie8 LESS/CSS
- jquery css添加IE8过滤器
- IE8 有时不加载 CSS
- 显示 CSS 样式表时出现 IE8 问题
- Selenium: IE8 CSS locators
- 伪造 CSS :独生子 在 IE8 中使用 jQuery/JavaScript
- CSS 在 IE8 中不起作用
- 限制IE8获取CSS文件
- 用于IE8的弯曲边框CSS
- 应用某些css样式后,fileupload-click事件未正确触发(在IE8上)
- IE8(Javascript和CSS)中带有拉伸BG的渐变图像背景
- Javascript/css in IE8
- 添加动态'过滤器'IE8的CSS属性不是't被正确分配
- CSS不适用于IE8、IE9,但适用于IE10及以上版本
- 如何用仅使用javascript的IE8及更低版本的CSS文件替换或删除任何特定的CSS属性
- 删除ie8及更早版本的JS和CSS文件
- IE8似乎在渲染css之前执行js
- 随机CSS文件加载-不工作在IE8 (7?)
- - jQuery's css方法中的运算符在IE8中不工作
- Java脚本:当使用css类复选框时,复选框中的onclick事件在ie8中不起作用