2011-07-02 12 views
5

मैं चयनित पाठ को बोल्ड करने या उसके रंग को सेट करने के लिए दस्तावेज़ पर execCommand पर कॉल कर रहा हूं। लेकिन हाल ही में मुझे एक निश्चित सीमा पर execCommand का उपयोग करने की आवश्यकता है, न कि चयनित पाठ।रेंज पर execCommand

क्या मैं ऐसा कर सकता हूं और यदि ऐसा है तो कैसे?

उत्तर

7

आप कर सकते हैं, लेकिन इसे चयन करने की आवश्यकता है। तो दूसरे शब्दों में, निम्न कार्य करें:

  • स्टोर वर्तमान चयन
  • एक नया Range
  • के आधार पर चयन प्रदर्शन करना execCommand
  • पिछले चयन आप

पुनर्स्थापित बनाओ निम्नलिखित के साथ श्रेणियों (गैर-आईई ब्राउज़र) से selection बना सकते हैं:

var selection = window.getSelection(); 
selection.removeAllRanges(); 
selection.addRange(range); 

आईई के साथ, आप सीधे execCommand को TextRange ऑब्जेक्ट्स पर निष्पादित कर सकते हैं, इसलिए यह पूरी प्रक्रिया आवश्यक नहीं होगी।

+0

यह अच्छा लगता है। एक प्रश्न (जैसा कि मैं जावास्क्रिप्ट में एक नौसिखिया हूं), आप एक नया चयन कैसे करेंगे? धन्यवाद। – Joshua

+1

@ जोशुआ मैंने अपने उत्तर को एक छोटे से उदाहरण – Niklas

+0

धन्यवाद के साथ अपडेट किया है, यह लगभग पूरी तरह से काम कर रहा है। :) – Joshua

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