2010-02-27 28 views
8

मेरे पास जावास्क्रिप्ट फ़ंक्शन है जो window.location का उपयोग करता है। यह फ़ायरफ़ॉक्स और इंटरनेट एक्सप्लोरर में ठीक काम करता है, लेकिन क्रोम में नहीं। मैंने इसका परीक्षण उबुनुतू हार्डी और विंडोज विस्टा दोनों पर किया है। अंतर्निहित समस्या क्या है, और मैं इसे कैसे रोक सकता हूं?window.location क्रोम ब्राउज़र पर काम नहीं करता

+8

अगर आप हमें functuon आप उपयोग कर रहे जावास्क्रिप्ट पता चला यह मदद मिलेगी ... :) – Rob

+4

-1 - एक समारोह के साथ मदद के लिए पूछना है और हमें लगता है कि करने के लिए उम्मीद? मदद चाहता हूं? कोड दिखाओ +1 @ रोब –

+3

और अगर मैं वर्तनी "फ़ंक्शन" सही तरीके से अभ्यास करता हूं तो यह चोट नहीं पहुंचाएगा;) – Rob

उत्तर

38

window.location का सबसे आम उपयोग ब्राउज़र एक नया पृष्ठ लोड करने के लिए है। एक सामान्य त्रुटि window.location ऑब्जेक्ट को इसकी संपत्ति href के बजाय URL असाइन करना है। तो, ऐसा करने का सही तरीका है:

window.location.href = 'http://www.guffa.com'; 
+4

धन्यवाद, गुफा। मैं window.location = 'url' का उपयोग कर रहा था। मैंने window.location.href को अपडेट किया है और मुझे अभी भी रीडायरेक्ट नहीं मिल रहा है। असल में, मुझे क्रोम में फ़ंक्शन से कोई प्रतिक्रिया नहीं मिल रही है। मैं निम्नलिखित परीक्षण समारोह है कि IE और एफएफ में ठीक काम करता है बनाया है, लेकिन नहीं क्रोम: [कोड] समारोह testfunc() { \t वर कोड = document.getElementById ("संपादित-रिपोर्ट-प्रकार")।मूल्य; \t अलर्ट (कोड); \t window.location.href = 'google.com'; } [/ कोड] –

+0

@ सोमोन: वर्तमान साइट में "google.com" पृष्ठ पर जाने के बजाय, क्या आपने साइट "google.com" पर जाने का प्रयास किया है? 'window.location.href = 'http: //google.com';' – Guffa

+1

हां। यह अभी भी वहां नहीं जाता है। यह क्रोम में या तो कोड वैरिएबल को अलर्ट नहीं करता है। मैंने पिछली टिप्पणी में कुछ कोड निकाला, लेकिन मैं फ़ंक्शन में एक वैरिएबल दाएं घोषित कर रहा था (var code = "test!") और फिर चर को चेतावनी दे रहा था। एफएफ और आईई चेतावनी दिखाता है, भले ही क्रोम नहीं करता है। –

0

बस निम्नलिखित HTML फ़ाइल बनाई और Google विंडो 4.0 में मेरे लिए विंडो.लोकेशन को चेतावनी दी - क्या आप पुराने संस्करण का उपयोग कर रहे हैं?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" > 
<head> 
    <title>Untitled Page</title> 
</head> 
<body> 

</body> 
</html> 
<script language="javascript" type="text/javascript"> 
alert(window.location); 
</script> 
+1

window.location = 'http: //stackoverflow.com'; क्रोम 4.0 में भी काम करता है और इस साइट पर रीडायरेक्ट करता है। – amelvin

0

समस्या हल हुई। फ़ंक्शन या क्रोम के साथ कोई समस्या नहीं थी। समारोह को एक ड्रूपल फॉर्म तत्व द्वारा बुलाया जाना चाहिए। मैं ऑनक्लिक इवेंट जोड़ रहा था जिसे एक विशेष रूप तत्व के बजाय, ड्रूपल फॉर्म में फ़ंक्शन कहा जाता था।

सुंदर ज्यादा यह कर:

$form['testform'] = array(
    '#type' => 'fieldset', 
    '#collapsible' => TRUE, 
    '#collapsed' => FALSE, 
     '#attributes' => array(
     'onchange' => 'testfunc()'), 
); 
इसके बजाय इस बात का

:

$form['testform']['element1'] = array(
    '#type' => 'select', 
     '#options' => options, 
     '#required' => false, 
     '#attributes' => array(
     'onchange' => 'testfunc()'), 

); 

मैं नहीं मूर्ख महसूस करो।

+1

कृपया दूसरों को आने और इसे उत्तर देने का प्रयास करने के लिए अपने स्वयं के प्रश्न का उत्तर स्वीकार करें (बाईं ओर टिक पर क्लिक करें) – Basic

0

मुझे एक ही समस्या थी, और मैं यह सुनिश्चित करने के लिए पर्याप्त सावधान नहीं था कि नए पुनर्निर्देशित यूआरएल में सफेद रिक्त स्थान (मुझ पर शर्म आती है)।

तो यदि यूआरएल मानकीकृत नहीं है तो क्रोम केवल इस नए स्थान को रोक देता है।

यदि आप मास्टर पेज का उपयोग कर रहे हैं तो सुनिश्चित करें कि आपके पास अपडेटपेनल है।

2

मुझे यह समस्या हो रही थी, और यह समाप्त हो गया कि मेरा जावास्क्रिप्ट फ़ंक्शन विंडो के बाद सच हो रहा था। स्थान टैग (नेस्टेड फ़ंक्शंस के कारण)। क्रोम ने किया, जबकि एफएफ और आईई ने अब तक संसाधित नहीं किया।

+0

मैं कुछ भी स्पष्ट नहीं कर रहा था; window.location.href सेट करने के बाद झूठी लौटा दी और यह काम किया। –

2

window. के बिना प्रयास करें। उदाहरण के लिए, window.location.assign() के बजाय location.assign() का उपयोग करें।

14

"वापसी झूठी" संलग्न करने का प्रयास करें; अपने जावास्क्रिप्ट कॉल करने के लिए तो जैसे ...

window.location.href='google.com; 
return false; 
+1

यह क्रोम आईओएस के लिए काम करने की पुष्टि है। अगर किसी के पास इसके लिए स्पष्टीकरण है तो इसकी अत्यधिक सराहना की जाएगी – corvuszero

+1

कोई स्पष्टीकरण नहीं, लेकिन फिर भी भयभीत। मुझे खुशी है कि किसी ने इसका जिक्र किया है! –

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

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