2012-04-21 13 views
9

मैं काम करने के लिए एक सरल सशर्त कथन पाने और समस्याओं में भाग लेने की कोशिश कर रहा हूं। असफल कोड:JQuery/जावास्क्रिप्ट और & ऑपरेटरों का उपयोग

$(document).ready(function(){ 
    var wwidth = $(window).width(); 

    if (wwidth < 321) { 
     alert("I am 320 pixels wide, or less"); 
     window.scrollTo(0,0); 
    } else if (wwidth > 321) && (wwidth < 481) { 
     alert("I am between 320 and 480 pixels wide") 
    } 
}); 

यदि मैं कोड का हिस्सा अगर अन्य को हटा देता हूं, तो मुझे चेतावनी मिलती है। यदि मैं & & या || का उपयोग करने का प्रयास करता हूं ऑपरेटर यह असफल हो जाएगा। मैंने गुगल किया है, मुझे कोई कारण नहीं मिल रहा है कि यह क्यों काम नहीं कर रहा है। मैंने यह भी कोशिश की है:

((wwidth > 321 && wwidth < 481)) 

अन्य तरीकों के साथ, बस अगर यह कुछ विषम वाक्यविन्यास चीज है।

किसी भी मदद की सराहना की जाएगी। धन्यवाद :)

+1

अपने तर्क में एक अंतराल theres। क्या होगा यदि खिड़की बिल्कुल 321 चौड़ी है? –

+0

यदि ऐसा होता है तो दुनिया समाप्त होती है, इससे कोई फर्क नहीं पड़ता;) – mrEmpty

+0

क्या आप सुनिश्चित हैं कि आपकी विंडो 480px से कम है? अन्यथा आपको सही वाक्यविन्यास के साथ कोई चेतावनी दिखाई नहीं देगी (अच्छे विकल्प जिनके लिए उत्तर में बताया गया है) – Cameron

उत्तर

13
((wwidth > 321) && (wwidth < 481)) 

इस हालत आप (http://jsfiddle.net/malet/wLrpt/) की जरूरत है।

मैं भी अपने स्थिति इतनी तरह स्पष्ट बनाने पर विचार होगा:

if (wwidth <= 320) { 
    alert("I am 320 pixels wide, or less"); 
    window.scrollTo(0,0); 
} else if ((wwidth > 320) && (wwidth <= 480)) { 
    alert("I am between 320 and 480 pixels wide") 
} 
+0

उत्कृष्ट, धन्यवाद। वह एक इलाज कर रहा है। – mrEmpty

2
if (wwidth > 321 && wwidth < 481) { 
//do something 
} 
0

दो मुद्दों कर रहे हैं। पहले का उत्तर दिया जा चुका है, दूसरा "wwidth> 320" है जो "wwidth> = 320" होना चाहिए। अगर खिड़की 480 से बड़ी है तो क्या होगा?

आप भी लागू कर सकते हैं इस प्रकार है "के बीच" के रूप में:

Number.prototype.between = function(a, b) { 
    return this >= a && this <= b 
} 

$(document).ready(function(){ 
    var wwidth = $(window).width(); 
    if (wwidth < 321) { 
     alert("I am 320 pixels wide, or less"); 
     window.scrollTo(0,0); 
    } else if (wwidth.between(321,481)) 
     alert("I am between 320 and 480 pixels wide") 
    else alert("I am greater than 480 pixels wide."); 
}); 
+0

ओह, मुझे 'बीच' पसंद है, मुझे इसके बारे में पता नहीं था। यदि स्क्रीन 480 से बड़ी है, तो मेरे पास कुछ और कथन हैं जो कुछ और आकारों की जांच करते हैं, 'अगर यह 1024 से ऊपर है' पर समाप्त होता है। यह डिवाइस के आधार पर साइट पर इस्तेमाल जावास्क्रिप्ट को बदलने का मेरा गुंजाइश तरीका है। – mrEmpty

+0

मुझे खुशी है कि आपने कुछ सीखा। –

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