2010-06-10 16 views
13

मैं एक एम्बेड करने योग्य जावास्क्रिप्ट पर काम कर रहा हूं जो अज्ञात पृष्ठों पर HTML तत्वों को सम्मिलित करता है। मेरे पास उन पृष्ठों की स्टाइलशीट का कोई नियंत्रण नहीं है जिन्हें मैं HTML में डाल दूंगा। समस्या यह है कि एचटीएमएल I डालने से गलती से पृष्ठ द्वारा स्टाइलिज्ड किया जाएगा, और मैं इसे रोकना चाहता हूं।किसी दिए गए HTML तत्व के लिए मैं शैलियों को "रीसेट" कैसे कर सकता हूं?

मेरे द्वारा डाले गए तत्वों को सुनिश्चित करने के बारे में जाने के लिए कम से कम वर्बोज़ और/या संसाधन गहन क्या है बिल्कुल जैसा कि मैं उन्हें बनना चाहता हूं? क्या किसी दिए गए HTML तत्व और बच्चों के लिए सभी स्टाइल को साफ़ करने का कोई आसान तरीका है? उदाहरण के लिए, फायरबग में, आप सभी स्टाइल को हटा सकते हैं। मुझे लगता है कि होना चाहिए, और कम से कम होना चाहिए, स्टाइलशीट नियमों से कुछ HTML तत्वों को मुक्त करने का मूल तरीका हो?

उदाहरण:

var myHTML = $("<div>my html in here</div>"); 
myHTML.resetAllStyles(); //<--- what would this function do? 
myHTML.appendTo("body"); 

मैं वास्तव में स्पष्ट रूप से गुण मैं प्रत्येक तत्व मैं डालने के लिए चाहता हूँ बताते हुए से बचना चाहते हैं ...

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

+0

+1 :) – 2ndkauboy

उत्तर

2

आप पैरेंट नोड्स से सीएसएस शैलियों को प्राप्त करने वाले तत्व को रोक नहीं सकते हैं। आप जो कुछ भी कर सकते हैं वह विरासत में मिली सभी शैलियों को ओवरराइट कर रहा है।

+0

Awful। इस कल्पना के साथ आने वाले छोटे दिखने वाले बेवकूफ कौन हैं? – Sambo

+2

@ सैम्बो - ऐसा करने के लिए तंत्र हैं, यदि आप एक फ्रेम चाहते हैं, तो एक फ्रेम का उपयोग करें, एक '