2012-12-04 14 views
27

के माध्यम से होवर सीएसएस विशेषताओं को जोड़ना कुछ सीएसएस शैलियों को होवर पर किसी तत्व पर लागू करने की आवश्यकता है, और सीएसएस शैलियों को सीधे जावास्क्रिप्ट/jquery का उपयोग करके लागू किया जाना चाहिए, स्टाइलशीट या $(this).addClass('someStyle') के माध्यम से नहीं, क्योंकि मैं डीओएम तत्वों को इंजेक्शन दे रहा हूं एक अन्य पेज।jQuery/जावास्क्रिप्ट

हम का उपयोग कर

$('#some-content').css({ 
    marginTop: '60px', 
    display: 'inline-block' 
}); 

हम कैसे :hover घटनाओं के लिए सीएसएस शैलियों जोड़ना चाहिए सामान्य सीएसएस शैलियों आवेदन कर सकते हैं?

$('#some-content').hover(
     function(){ $(this).css('display', 'block') }, 
     function(){ $(this).css('display', 'none') } 
) 
+0

देखो '.hover() jQuery में' विधि। http://api.jquery.com/hover/ –

+0

jquery या onmouseover और onmouseout में होवर ईवेंट के आधार पर कक्षा को क्यों न जोड़ें और निकालें? –

+0

जब आप इससे दूर हो जाते हैं तो तत्व गायब हो जाना चाहते हैं? आप इसे फिर से कैसे घुमाएंगे? – Alnitak

उत्तर

21

मैं mouseenter का उपयोग कर पाते हैं और मंडराना से बेहतर mouseleave:


हम का सहारा लेना है। अधिक नियंत्रण है।

$("#somecontent").mouseenter(function() { 
    $(this).css("background", "#F00").css("border-radius", "3px"); 
}).mouseleave(function() { 
    $(this).css("background", "00F").css("border-radius", "0px"); 
}); 
+5

"अधिक नियंत्रण है" कथन पर विस्तृत करने के लिए देखभाल? जहां तक ​​मुझे पता है कि 'होवर()' फ़ंक्शन ठीक है जो आपने कोड किया है ठीक करने के लिए एक शॉर्टेंड है। –

+3

मुझे बस इसके तत्व के बारे में बताया गया है कि 'माउस तत्व में प्रवेश कर रहा है' और 'माउस छोड़ने वाला तत्व'। हालांकि, इस पृष्ठ पर आलेख सुझाव देंगे कि अनुकूल माउस के रूप में लाइव माउसेंटर/माउसलेव सर्वोत्तम है। http://jsperf.com/hover-vs-mouseenter – Jon

12

इस प्रयास करें:

$('#some-content').hover(function(){ 
    $(this).css({ marginTop: '60px', display: 'inline-block' }); 
}, function(){ 
    $(this).css({ //other stuff }); 
}); 

या का उपयोग कर वर्गों

$('#some-content').hover(function(){ 
    $(this).toggleClass('newClass'); 
}); 

अधिक जानकारी यहाँ .hover() और .toggleClass()

3

आप उन्हें एक hover स्थिति में रखना चाहिए:

012,
var elem = $('#elem'); 

elem.hover(function() { 
    // ... :hover, set styles 
}, function() { 
    // ... this function is called when the mouse leaves the item, set back the 
    //  normal styles 
}); 

हालांकि, मैं पूरी तरह से कक्षाओं में अपने सीएसएस को रखने और जेएस में उन वर्गों का उपयोग करने की सलाह देता हूं, आपको जितनी चाहें उतनी भाषाओं को विभाजित करना चाहिए।

2
$("#someObj").hover(function(){ 
    $(this).css(...); 
}:); 

http://api.jquery.com/hover/

+0

यह माउस को स्थानांतरित करने के बाद सीएसएस को चिपकने का कारण बनता है। – Moss