2012-08-04 17 views
8

पर फ़ोकस पर गायब नहीं होता है मैंने नीचे दिए गए कोड के अनुसार एक इनपुट बनाया है।प्लेसहोल्डर क्रोम

<div> 
    <form id="me" runat="server"> 
    <input id="stuff" type="text" placeholder="Type here" runat="server" /> 
    </form> 
</div> 

जैसा कि मैंने टाइप करना शुरू किया, उम्मीद है कि प्लेसहोल्डर टेक्स्ट गायब हो जाता है। यह बर्निंग कैट ब्राउज़र में माना जाता है लेकिन चमकदार धातु ब्राउज़र में नहीं। इसका क्या कारण है (शैलियों, सर्वर टैग, अन्य सामान ...)? इस विषय में क्या किया जा सकता है?

उत्तर

10

फ़ायरफ़ॉक्स और क्रोम (और सफारी) एचटीएमएल 5 प्लेसहोल्डर पर अलग-अलग कार्य करते हैं। आप ध्यान केंद्रित करने पर प्लेसहोल्डर गायब क्रोम चाहते हैं, आप स्क्रिप्ट निम्न का उपयोग कर सकते हैं: placeholderFix:

$('input:text, textarea').each(function(){ 
    var $this = $(this); 
    $this.data('placeholder', $this.attr('placeholder')) 
     .focus(function(){$this.removeAttr('placeholder');}) 
     .blur(function(){$this.attr('placeholder', $this.data('placeholder'));}); 
}); 
+5

मैं एक बग के रूप में इस व्यवहार समझना चाहते हैं। मेरा मतलब है, अगर मुझे प्लेसहोल्डर गायब होने के लिए कुछ जेएस जोड़ने की ज़रूरत है, तो इसे एक काम-आसपास कहा जाना चाहिए। या क्या कोई वैध कारण है कि यह इस तरह से व्यवहार करता है? –

+6

मुझे वास्तव में प्लेसहोल्डर करने का क्रोम तरीका पसंद है। यह आपको प्लेसहोल्डर टेक्स्ट को फ़ॉर्म फ़ील्ड लेबल्स के रूप में उपयोग करने की इजाजत देता है, भले ही आपका पृष्ठ किसी एक फ़ील्ड पर केंद्रित हो। – xamde

+3

चयनकर्ता '$ ('[प्लेसहोल्डर]' होना चाहिए) क्योंकि ऐसे कई इनपुट प्रकार हैं जो टेक्स्ट या टेक्स्टरेरा (ईमेल, आदि) नहीं हैं और प्लेसहोल्डर हो सकते हैं। इसके अलावा नया jQuery पसंद नहीं करता है (दुर्भाग्य से) 'टेक्स्ट' चयनकर्ता। – Rudy

0

आप इस प्लेसहोल्डर jQuery प्लगइन का उपयोग कर सकते हैं। इस प्लगइन के साथ, प्लेसहोल्डर टैग सभी ब्राउज़रों में उसी तरह काम करेगा, ब्राउज़र में भी जो इसका समर्थन नहीं करते हैं।

28

मैं आज एक ही समस्या भर में आया था और मैं एक शुद्ध सीएसएस समाधान हैक के साथ आया था:

input:focus::-webkit-input-placeholder { 
    color: transparent; 
} 
+4

+1 लेकिन मुझे यह इंगित करने की आवश्यकता है कि - जबकि मैं ** वास्तव में ** दृष्टिकोण की तरह - यह एक समाधान नहीं है। यह एक काम-आसपास है। मुझे अभी भी दावा है कि यह क्रोम में एक बग है। :) –

+0

इसके अलावा, आप भाषा टैग के लिए वाक्यविन्यास चूक गए। यह अंत में * लैंग-सीएसएस * और दो डैश "* - *" होना चाहिए। मैंने sytax को सही किया और अब आपका जवाब और भी बेहतर दिखता है! –

+0

मैं पूरी तरह से सहमत हूं। मैंने * समाधान * के बजाय * हैक * शब्द का उपयोग करने पर विचार किया लेकिन किसी कारण से बाद वाले के साथ चला गया। मैंने अब इसे प्रतिबिंबित करने के लिए पोस्ट संपादित किया है। मैंने वाक्यविन्यास टैग के विभिन्न रूपों का प्रयास किया लेकिन कुछ भी काम नहीं कर रहा था। अब मुझे लगता है कि यह काम कर सकता है लेकिन मैंने ध्यान नहीं दिया क्योंकि रंग दोनों बहुत अंधेरे हैं। सहायता के लिए धन्यवाद। –

संबंधित मुद्दे