javascript - Splitting HTML before every image tag -


  & lt; div id = "d" & gt; & Lt; p & gt; एक & lt; / p & gt; & Lt; p & gt; दो & lt; / p & gt; & Lt; img वर्ग = "छवि का चयन करें" src = "कुछ" & gt; & Lt; p & gt; विभाजन करें & lt; p & gt; & Lt; p & gt; अधिक विभाजन & lt; / p & gt; & Lt; img वर्ग = "छवि 2 का चयन करें" src = "कुछ" & gt; & Lt; img वर्ग = "छवि 3 का चयन करें" src = "कुछ" & gt; & Lt; p & gt; अधिक विभाजित यहां & lt; p & gt; & Lt; / div & gt; & LT; स्क्रिप्ट & gt; // छद्म जावास्क्रिप्ट: $ ('# डी')। ('आईएमजी')। प्रत्येक (फ़ंक्शन () {var split = split.images (); अलर्ट (विभाजन);}); चेतावनी (lastSplit); & Lt; / स्क्रिप्ट & gt;   

छवि के बाद

  split = & gt; & Lt; p & gt; एक & lt; / p & gt; & lt; p & gt; दो & lt; / p & gt;   

दूसरी छवि के बाद:

  split = & gt; & Lt; p & gt; विभाजन करें & lt; p & gt; & Lt; p & gt; अधिक विभाजन & lt; / p & gt;   

तीसरी छवि के बाद

  split = & gt; ""   

यदि आखिरी छवि के बाद कोई पाठ है तो उसे पिछले विभाजन में संग्रहीत करना होगा

  अंतिम विभाजन (यदि कोई है) = & gt; & Lt; p & gt; अधिक विभाजित यहां & lt; p & gt;   

मैं इसे सामान्य बनाना चाहता हूं, क्योंकि मुझे नहीं पता कि HTML टैग में कितने छवि टैग होंगे। कोई मुझे एक लाइव डेमो दे सकता है? आउटपुट div इस तरह होना चाहिए

  & lt; div id = \ "d \" & lt; p & gt; एक & lt; / p & gt; & lt; p & gt; दो & lt; / p & gt; छवि चुनें & lt; p & gt; विभाजन करें & lt; p & gt; & lt; p & gt; अधिक विभाजित & lt; / p & gt; छवि 2 का चयन करें छवि 3 चुनें & lt; p & gt; और अधिक विभाजित करें & lt; p & gt; & lt; / div & gt;    

अगर मैं अपना प्रश्न सही ढंग से समझता हूं, कुंजी भाई नोड्स के माध्यम से चलना है और हर बार जब आप एक आईएमजी टैग ढूंढते हैं तो विभाजित:

  var splitAtImages = function ($ parent) {var splits = []; Var currentSplit = []; $ Parent.children ()। प्रत्येक (फ़ंक्शन () {var $ this = $ (this); अगर ($ this.is ("img")) {splits.push (currentSplit); currentSplit = [];} else { // पूरे नोड // वर्तमान एसप्लीट पीयूश ($ इस); // को पुश करने के लिए इसका इस्तेमाल करें, या नोड चालू एसप्लिट पीशूट का सिर्फ एचटीएमएल धक्का करने के लिए इसका इस्तेमाल करें। ($ This [0]। Outer HTML);}}) यदि (वर्तमानSplit.length) splits.push (currentSplit); वापसी विभाजन; }   

यह बिल्कुल ठीक नहीं है कि आपको क्या चाहिए, लेकिन इसे आपको कम से कम शुरू करना चाहिए।

Comments

Popular posts from this blog

c# - Textbox not clickable but editable -

Matlab transpose a table vector -

ios - Adding an SKSpriteNode to SKScene from a child SKSpriteNode -