2012-01-10 15 views
157

मैं इस a है और मैं नहीं जानता कि मैं में "onmouseover" डालने के लिए इतना है कि कर्सर एक नियमित रूप से लिंक की तरह उंगली सूचक के लिए बदल जाएगा की जरूरत है:परिवर्तन कर्सर

<a class="menu_links" onclick="displayData(11,1,0,'A')" onmouseover=""> A </a> 

मैं कहीं पढ़ा है कि मुझे डालने की जरूरत है:

onmouseover="cursor: hand (a pointing hand)" 

लेकिन यह मेरे लिए काम नहीं कर रहा है।

प्लस मुझे यकीन नहीं है कि यह जावास्क्रिप्ट, सीएसएस, या सिर्फ सादा HTML माना जाता है।

+0

यह सीएसएस है और ऑनसाउसओवर इवेंट एक जावास्क्रिप्ट ईवेंट है। – Scott

+0

आप सीएसएस को सीधे onmouseover = "" में नहीं डालते हैं। इसके अलावा, कर्सर: आपके लिंक पर होवर करते समय हाथ डिफ़ॉल्ट कार्रवाई होनी चाहिए। यदि यह नहीं हो रहा है, तो हाथ में एक और मुद्दा हो सकता है। – Tank

+1

संभव डुप्लिकेट [बिना कर्सर के लिंक के लिए कर्सर शैली को पॉइंटर पर कैसे सेट करें] (http://stackoverflow.com/questions/2409836/how-to-set-cursor-style-to-pointer-for-links-without- hrefs) –

उत्तर

331
<a class="menu_links" onclick="displayData(11,1,0,'A')" onmouseover="" style="cursor: pointer;"> A </a> 

यह सीएसएस है।

या एक शैली पत्रक में:

a.menu_links { cursor: pointer; } 
+4

आपको बहुत धन्यवाद –

+1

बस एक छोटा टाइपो - 'कर्सर: पॉइंटर; '। मैंने पोस्ट को संपादित करने का प्रयास किया, लेकिन मैंने कम से कम 6 वर्णों को संशोधित करने के लिए कहा। इसके अलावा, धन्यवाद! –

+2

इसका परीक्षण करने के बाद, ऐसा लगता है कि दोनों onmouseover = "" और style = कर्सर: पॉइंटर; "होना आवश्यक है।यदि आपके पास स्टाइल टैग है, तो पॉइंटर पॉइंटर कर्सर एक क्लिक इंटरैक्शन के बाद मानक पॉइंटर पर गायब/डिफ़ॉल्ट हो जाएगा। अच्छा पोस्ट स्कॉट, धन्यवाद। – DnfD

37

आप सीएसएस में यह कर सकते हैं:

a.menu_links { 
    cursor: pointer; 
} 

यह वास्तव में लिंक के लिए डिफ़ॉल्ट व्यवहार है। आपने किसी भी तरह से अपने सीएसएस में इसे कहीं और ओवरराइड किया होगा, या वहां href विशेषता नहीं है (यह आपके उदाहरण से गुम है)।

+0

मेरे पास एक href coz नहीं है, मैं पृष्ठ छोड़ना नहीं चाहता हूं। यह एक लिंक है जो एक जेएस फ़ंक्शन को ट्रिगर करता है और यदि मैं href = "#" डालता हूं तो यह गड़बड़ करता है और यह गलत पृष्ठ –

+2

@DvirLevy को पुनः लोड करता है - तो या तो झूठी वापसी करें और 'href =" # "' का उपयोग करें, या बस सीएसएस का उपयोग करें जैसा कि मैंने आपको दिखाया है ... –

3

यह एक वैध लिंक यह एक नेविगेशन के कारण से रोकने के लिए ईवेंट हैंडलर में & return false; बनाने के लिए एक href विशेषता जोड़ें;

<a href="#" class="menu_links" onclick="displayData(11,1,0,'A'); return false;" onmouseover=""> A </a> 

(या displayData() वापसी झूठी बनाने के लिए और ..="return displayData(..)

8

सीएसएस लिखने में

a.menu_links:hover{ cursor:pointer} 
17

मैं इस एक का उपयोग कर की तरह अगर मैं केवल पृष्ठ पर एक लिंक है:

onMouseOver="this.style.cursor='pointer'" 
7

यहाँ अगर आप इसके साथ अतिरिक्त मील जाना चाहते हैं तो कुछ अच्छा है। यूआरएल में, आप एक लिंक का उपयोग कर सकते हैं या एक छवि पीएनजी बचा सकते हैं और पथ का उपयोग कर सकते हैं। उदाहरण के लिए:

यूआरएल ('संपत्ति/imgs/theGoods.png');

.cursor{ 
    cursor:url(http://www.icon100.com/up/3772/128/425-hand-pointer.png), auto; 
} 

तो यह केवल आकार 128 X 128 के तहत काम करेंगे, किसी भी बड़ा और छवि अभ्यस्त लोड:

नीचे

कोड है। लेकिन आप वास्तव में किसी भी छवि का उपयोग कर सकते हैं! यह शुद्ध सीएसएस 3, और कुछ एचटीएमएल पर विचार किया जाएगा। आपको एचटीएमएल में क्या करना है

<div class='cursor'></div> 

और केवल उस div में, वह कर्सर दिखाएगा। तो मैं आमतौर पर इसे शरीर टैग में जोड़ता हूं।

4

मुझे लगता है कि उपरोक्त "सर्वश्रेष्ठ उत्तर" प्रोग्रामेटिक रूप से सटीक होने के बावजूद, वास्तव में प्रश्न का उत्तर नहीं देता है। प्रश्न पूछता है कि माउसओवर घटना में सूचक को कैसे बदला जाए। मैं इस बारे में पोस्ट देखता हूं कि किसी को त्रुटि कैसे हो सकती है, इस सवाल का जवाब नहीं दे रहा है। स्वीकृत उत्तर में, माउसओवर इवेंट खाली है (onmouseover="") और शैली विकल्प, इसके बजाय, शामिल है। परेशान क्यों यह किया गया था।

पूछताछ के लिंक में कुछ भी गलत नहीं हो सकता है। निम्नलिखित एचटीएमएल पर विचार करें:

<a id=test_link onclick="alert('kinda neat);">Click ME!</a> 

एक उपयोगकर्ता माउस के इस लिंक पर, पॉइंटर एक हाथ करने के लिए नहीं बदलेगा जब ... बजाय, सूचक व्यवहार करेंगे जैसे कि यह सामान्य पाठ पर मँडरा रहा है। कोई यह नहीं चाहता ... और इसलिए, माउस सूचक को बदलने के लिए कहा जाना चाहिए।

जवाब के लिए मांग की जा रही है (जो किसी अन्य के द्वारा पोस्ट किया गया):

<a id=test_link onclick="alert('Nice!');" 
     onmouseover="this.style.cursor='pointer';">Click ME!</a> 

बहरहाल, यह अगर आप इन के बहुत सारे है, या सब कुछ खत्म हो बात इस तरह का उपयोग करें ... एक बुरा सपना जगह और किसी प्रकार का बदलाव करने या बग में चलाने का फैसला करें। बेहतर इसके लिए एक CSS वर्ग बनाने के लिए:

a.lendhand { 
    cursor: pointer; 
} 

तो:

<a class=lendhand onclick="alert('hand is lent!');">Click ME!</a> 

वहाँ, कई अन्य तरीकों से होगा यकीनन इस विधि की तुलना में बेहतर। DIV एस, बटन एस, आईएमजी एस, आदि अधिक उपयोगी साबित हो सकता है। हालांकि, <a>...</a> का उपयोग करने में मुझे कोई हानि नहीं दिखाई देती है।

जेरेट।

1

शुद्ध सीएसएस के माध्यम से समाधान जैसा कि उत्तर के रूप में चिह्नित उत्तर में वर्णित है, इस स्थिति के लिए उपयुक्त नहीं है।

इस विषय में उदाहरण में सामान्य स्थिर href विशेषता नहीं है, यह केवल जेएस को कॉल कर रहा है, इसलिए यह जेएस के बिना कुछ भी नहीं करेगा।

तो जेएस के साथ पॉइंटर पर स्विच करना अच्छा है। तो, समाधान

onMouseOver="this.style.cursor='pointer'" 

के रूप में (लेकिन मैं वहाँ टिप्पणी नहीं कर सकता) जैसा कि ऊपर उल्लेख सबसे अच्छा एक इस मामले में है। (लेकिन हां, सामान्य रूप से, जेएस की मांग नहीं करने वाले सामान्य लिंक के लिए, जेएस के बिना शुद्ध सीएसएस के साथ काम करना बेहतर होता है।)

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