2016-10-01 10 views
8

में मिलता है, जहां मैं यह जानना चाहता हूं कि वेब ब्राउज़र ने दिए गए div में टेक्स्ट को लपेटा है।जावास्क्रिप्ट: हमारे टेक्स्ट रैपिंग को div

इसके लिए प्रेरणा एक WYSIWYG संपादक है जो contenteditable का उपयोग करता है। उपयोगकर्ता वहां टेक्स्ट लिखते हैं, और संपादन योग्य फ़ील्ड की चौड़ाई, फ़ॉन्ट, और अन्य कारकों के आधार पर, यह कुछ स्थानों पर लपेटता है। मैं जानना चाहता हूं कि ये कहां होते हैं।

मैं केवल बहुत hackish समाधान के बारे में सोच सकते हैं (जैसे, एक span हर किरदार के चारों ओर डालें, इन फैला अधिक पाश, उनके offsetTop संपत्ति मिलता है, और जब भी यह परिवर्तन एक नोट बनाना)। क्या ऐसा करने का एक बेहतर/मानक तरीका है?

+1

जानकारी के साथ क्या करना चाहते हैं कर रहे हैं क्या? क्या आप ब्रेकपॉइंट्स पर तत्व जोड़ रहे हैं, या सिर्फ यह जानने की जरूरत है कि कितने ब्रेक आदि हैं? – kthornbloom

+0

हम इस जानकारी का उपयोग अन्य प्रारूपों में सामग्री को प्रस्तुत करते समय एक ही परिणाम प्राप्त करना चाहते हैं। दूसरे शब्दों में, उपयोगकर्ता वेब पर सामग्री संपादित करता है और विशेष स्थानों पर लाइनों को तोड़ता है। फिर उपयोगकर्ता डेटा को सर्वर पर सबमिट करता है। सर्वर को एक पीडीएफ प्रस्तुत करना चाहिए जो जितना संभव हो उतना दिखता है। – Sjlver

+1

एसओ और बाहर इस प्रश्न के कई जवाब हैं: https://github.com/xdamman/js-line-wrap-detector http://stackoverflow.com/questions/12887372/detect-browser-wrapped-lines- के माध्यम से जावास्क्रिप्ट –

उत्तर

1

मैंने एक Google किया और इसे स्टैक ओवरफ़्लो पर पाया, यह सुनिश्चित नहीं है कि आप यही हैं, लेकिन इसे पढ़ लें। यह काफी पुराना है।

Finding line-wraps

0
document.getElementById("body").onchange = function() {myFunction()}; 

     function myFunction() { 
      //Your eval script to log where changes took place 
     } 

या

document.getElementById('body').addEventListener('change', myFunction()); 
संबंधित मुद्दे