2011-06-16 9 views
34

विंडोज फोन 7 ब्राउज़र के साथ, जब उपयोगकर्ता एक लिंक पर क्लिक करता है, तो यह लगभग 0.5 सेकंड के लिए ग्रे आयताकार के साथ छायांकित होता है। आम तौर पर यह ठीक है, हालांकि, यदि आपके पास गतिशील पृष्ठ व्यवहार है, उदाहरण के लिए, एक लिंक पर क्लिक करने से डीओएम अपडेट होता है ताकि लिंक अब दिखाई न दे, लिंक के बाद स्क्रीन पर अपारदर्शी ग्रे आयताकार लिंग।विंडोज फोन 7 ब्राउज़र - जब लिंक क्लिक किए जाते हैं तो ग्रे शेडिंग बंद करें

यह बहुत भयानक लग रहा है!

क्या कोई इस प्रभाव को अक्षम करने के बारे में जानता है?

+0

यह नहीं पता कि इसे कैसे अक्षम किया जाए, लेकिन आप जावास्क्रिप्ट में टाइमर सेट कर सकते हैं और 0.5 के बाद डीओएम अपडेट कर सकते हैं :) (मुझे लगता है कि आप अपनी वेबसाइट को ट्विक करने की कोशिश कर रहे हैं) – Praetorian

+0

नहीं - मैं देख रहा हूं कि मैं जटिल HTML/JS ऐप्स बना सकता हूं या नहीं। तो, नहीं, यह एक विकल्प नहीं है। किसी भी तरह धन्यवाद! – ColinE

+0

मेरा मतलब यह है कि किसी भी तरह के एक गंभीर सुझाव से मजाक के रूप में और अधिक :) बीटीडब्ल्यू, मुझे पदों की मोशन श्रृंखला में आपका मेट्रो पसंद है। – Praetorian

उत्तर

2

निम्न समाधान काम करता है (कम से कम एमुलेटर पर)। भूरे रंग के छायांकन को क्लिक किए गए तत्व के आयामों की आवश्यकता होती है। यदि तत्व की शून्य चौड़ाई है तो कोई छायांकन नहीं है, जबकि बाल तत्वों पर क्लिक करने से तत्व के क्लिक हैंडलर को अभी भी आग लगती है।

<div id="myLink" style="float:left"> 
    <img src="images/myLinkIcon.png" style="position:absolute" /> 
    <span style="position:absolute;left:50px">Click here</span> 
</div> 

<script> 
    // jQuery 
    $(function() { 
     $("#myLink").click(function() { 
      console.log("clicked on myLink"); 
     }); 
    }); 
</script> 

div या तो फ्लोट या पूरी तरह से स्थित हो सकता है। बच्चे के तत्वों को पूरी तरह से तैनात किया जाना चाहिए, अन्यथा div एक चौड़ाई प्राप्त करता है।

1

यह काम करता है jQuery

$(id|classname|document).live('click',function(){ 
    //write code that needs to executed in this area 
}); 

मैं अपने प्रोजेक्ट में इस का इस्तेमाल किया है का उपयोग करें। यह ग्रे छाया को छिपाने के लिए, HTML पृष्ठों में इनलाइन समारोह का उपयोग कर से बचने के ... jQuery का उपयोग कर इस समारोह में काम करता है केवल जब भीतरी सामग्री यह करने के लिए असाइन किया गया है ठीक काम करता है .. जैसे

<div id="d1"><div id="d2"></div></div> 

आप कर सकते हैं इस तरह भीतरी div के लिए इस

$('#d2").live('click',function(){changecolor();changebackground();}); 

कोडिंग ........ jQuery का आनंद आप आप में खंड सिर html फ़ाइल में

+1

सामान्य रूप से बहुत अच्छा काम करता है लेकिन पॉपओवर "लाइव" कारणों पर पॉपओवर के पीछे बुलाए जाने वाले कार्यक्रमों पर क्लिक करें। प्रचार रोकने के लिए तंत्र JQuery "लाइव" कमांड के साथ मिलकर काम नहीं कर रहे हैं। Http://api.jquery.com/event.stopPropagation/ –

19

मेटा टैग जोड़ें।

<meta name="msapplication-tap-highlight" content="no" /> 

यह काम करना चाहिए।

+1

का अतिरिक्त नोट देखें जो निश्चित रूप से काम करता है! चियर्स! – Eggie

+1

आईई 9 वाले विंडोज 7 फोन के लिए काम नहीं करता है – Sheetal

-1

समाधान 2 डीआईवी बनाने का है। मुख्य div में चौड़ाई/ऊंचाई नहीं है और यह डीआईवी फायरिंग इवेंट है और अंदर डीआईवी आकार मिला है।

मैंने अपने दोस्तों के साथ फोनगैप प्रोजेक्ट के अंदर उदाहरण बना दिया है। लिंक देखें: https://github.com/sellupp/cordova-for-windows-phone-7-antidepressant आप देख रहे हैं: 1. टैप

पर ग्रे क्षेत्र भी हम कम जिम्मेदारियों के साथ समस्या का सामना कर रहे हैं। इसे देखें;)

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