でテキストストロークを使用したいのです<input type="text"/>
が、クロスブラウザ(Firefox、Google Chrome、Safari、Opera、IE7 +)である必要があります。
それを行う方法はありますか(CSS 2.1、jQuery ...)?
彼はcssプロパティのtext-stroke(-webkit-text-stroke
)について話していると思います。これはWebkitブラウザでのみ適切にサポートされているため、たとえばInternetExplorerでは適切な実装を行うことはできません。ただし、ie7+で動作text-shadow
するように偽造することはできます。あなたがすなわちでそれを持っていなければならないならば。http://css-tricks.com/adding-stroke-to-web-text/を参照してください
次のようになります。
.stroke_text {
color: white;
text-shadow:
-1px -1px 0 #000,
1px -1px 0 #000,
-1px 1px 0 #000,
1px 1px 0 #000;
}
またはインラインの場合:
<input type='text'
style="color: white; text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000; width:200px; font-size:20px;" />
このアプローチの唯一の本当の欠点は、シャドウが1pxしかないこと、またはシャドウが面白く見え始めることです。そのため、の完全な複製ではありませんtext-stroke
。そうは言っても、条件付きcssを調べたいと思うかもしれません。そこでは、それをサポートするブラウザーがテキストストロークを使用し、他のブラウザーはこのハッキーなアプローチを使用します。
あなたが何を意味するのか正確にはわかりませんが、これはあなたが望むものだと思います-
<input type="text" onkeyup="function_you_want_tocall()" />
漠然とした質問のため、多くの選択肢があります。
$('#myInput').change(function() { ... } ); // this will fire onblur if the text has changed
$('#myInput').keydown(function() { ... } ); // this will fire when a key is pressed down
$('#myInput').keyup(function() { ... } ); // this will fire when a key is released
$('#myInput').keypress(function() { ... } ); // this will fire when a printable key is pressed
jQueryを使用すると、次のようなことができます。
$(document).ready(function() {
$("input[type='text']").keypress(function() {
// Your logc goes here
});
});
これにより、keypressイベントがすべてのinput type=textにバインドされます。特定のIDが必要な場合は、$( "input [type ='text']を$("#your_id ")に置き換えます。さらに、keydownイベントとkeyupイベントを試して、自分に最も適したものを見つけます。