如何从Chrome中的文件输入中删除"未选择文件"工具提示?

Ger*_*rre 73 html javascript css jquery google-chrome

我想从Google Chrome中的文件输入中删除"未选择文件"工具提示(我发现Firefox中没有显示工具提示).

请注意,我所说的不是输入字段中的文本,而是关于将鼠标移到输入上时出现的工具提示.

我试过这个没有运气:

$('#myFileInput').attr('title', '');
Run Code Online (Sandbox Code Playgroud)

und*_*ned 57

这是webkit浏览器的本机部分,您无法将其删除.您应该考虑像覆盖隐藏文件输入这样的hacky解决方案.

一个hacky解决方案:

input[type='file'] {
  opacity:0    
}
Run Code Online (Sandbox Code Playgroud)

<div>
    <input type='file'/>
    <span id='val'></span>
    <span id='button'>Select File</span>
</div>   
Run Code Online (Sandbox Code Playgroud)

$('#button').click(function(){
   $("input[type='file']").trigger('click');
})

$("input[type='file']").change(function(){
   $('#val').text(this.value.replace(/C:\\fakepath\\/i, ''))
})    
Run Code Online (Sandbox Code Playgroud)

小提琴

  • @NisanthSojan所以让它变得更好,这只是一个例子. (7认同)
  • 当您将鼠标悬停在输入的底部边缘时,仍会显示工具提示。“不透明度:0”不能解决问题。 (3认同)
  • @Webars 我提到了hacky,而不是防弹。 (2认同)

Dwa*_*rde 50

对我来说,我只是希望文本不可见,仍然使用本机浏览器按钮.

input[type='file'] {
  color: transparent;
}
Run Code Online (Sandbox Code Playgroud)

我喜欢所有未定义的建议,但我有一个不同的用例,希望这可以帮助处于相同情况的人.

  • 这为我摆脱了"没有选择的文件" (5认同)
  • 没有为我带走"没有选择的文件". (2认同)
  • 这不会删除将鼠标悬停在按钮上时出现的工具提示,它只是隐藏按钮旁边的文本。 (2认同)

小智 50

可以使用title属性编辑默认工具提示

<input type='file' title="your text" />
Run Code Online (Sandbox Code Playgroud)

但是,如果您尝试删除此工具提示

<input type='file' title=""/>
Run Code Online (Sandbox Code Playgroud)

这不行.这是我的小技巧,用空格尝试标题.它会工作.:)

<input type='file' title=" "/>
Run Code Online (Sandbox Code Playgroud)

  • 适用于 Chromium 版本 44.0.2403.89,并且在版本 40.0.3 中没有副作用!很棒的输入@simon (2认同)

小智 8

您可以禁用工具提示,在Chromekit等Webkit浏览器上设置空格,在Firefox或IE上设置空字符串(在Chrome 35,FF 29,IE 11,safari mobile上测试)

$('input[type="file"]').attr('title', window.webkitURL ? ' ' : '');
Run Code Online (Sandbox Code Playgroud)


小智 8

我找到了一个非常简单的解决方案,只需在title属性中设置一个空字符串即可。

<input type="file" value="" title=" " />
Run Code Online (Sandbox Code Playgroud)

  • 您应该只使title =“”,否则title =“”显示空白的工具提示。 (2认同)

Lad*_*lin 5

这里的所有答案都过于复杂,或者完全错误。

html:

<div>
    <input type="file" />
    <button>Select File</button>
</div>
Run Code Online (Sandbox Code Playgroud)

css:

input {
    display: none;
}
Run Code Online (Sandbox Code Playgroud)

javascript:

$('button').on('click', function(){
   $('input').trigger('click'); 
});
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/odfe34n8/

我以最简单的方式创建了这个小提琴。单击“选择文件”按钮将调出文件选择菜单。然后,您可以按您想要的任何方式对按钮进行样式化。基本上,您需要做的就是隐藏文件输入,并在您单击另一个按钮时触发对它的合成单击。我在 IE 9、FF 和 Chrome 上对此进行了现场测试,它们都运行良好。


小智 5

这个适用于我(至少在Chrome和Firefox中):

<input type="file" accept="image/*" title="&nbsp;"/>
Run Code Online (Sandbox Code Playgroud)


小智 5

很简单,忘记了针对输入["类型"]的CSS,它对我不起作用.我不知道为什么.我的HTML标签中有我的解决方案

<input type="file" style="color:transparent; width:70px;"/>
Run Code Online (Sandbox Code Playgroud)

问题结束了