2013-01-17 30 views
-1

我有一個DIV,我希望在沒有這些操作出現在瀏覽器中的情況下進行操作。更具體地說,我想從DIV中刪除圖片,然後保存HTML。複製不渲染的Jquery對象

divObj.find($(".picture1")).remove(); 

我試圖技術複製divObj但即使是複製引用的是什麼瀏覽器,所以上面的圖片從畫面,我不希望發生的消失。

所以我首先需要製作一個副本,它並不真正在瀏覽器中引用DIV,但只在內存中執行操作。這可能嗎?

+0

爲什麼你會通過現有的jQuery對象('$( 「#圖片1」)')爲'.find()'? –

+0

那麼你想從頁面中刪除圖片,但保存在一些變量? – VisioN

+0

我想刪除圖片並保存其餘部分。就Find而言,我不認爲它與這個問題有關。這是我在發佈之前對原始代碼進行編輯的遺留物。 – Dave

回答

2

所以我首先需要製作一個副本,它並不真正在瀏覽器中引用DIV,但只在內存中執行該操作。這可能嗎?

使用.clone()而不是.remove()

var $copy = $("#picture1").clone(); 

.find()這裏完全沒有必要。

+0

我其實想排除圖片,然後休息一下。 – Dave

+0

克隆工作。它根據我的需要改變了內存。對不起,我以爲我已經嘗試過了。 – Dave

0

你將首先需要做一個div來存儲所有這些隱藏的東西,怎麼回事如

<div class="myHiddenDiv"></div> 

$(document).ready(function(){ 
    $('.myHiddenDiv').hide(); //using jQuery's hide will hide , but allows changes 
    }); 

然後clone() thatever你想要的副本圖片,append()這個克隆到隱藏的div,你可以minubulate隱藏div所有你想要的

+0

爲什麼你需要隱藏的div? jQuery可以很好地處理分離的元素。 – Barmar

+0

我想他可以克隆整個div,把它放在一個隱藏的父母,現在當它隱藏的圖像或任何他想要的,然後他可以複製這個html,而不會影響用戶在他們的瀏覽器中看到@Barmar –

1

如果你想提取來自原稿的圖像,而是存儲在一些可變畫面的jQuery對象,則可以使用.detach()方法:

.detach()方法是一樣的.remove(),不同之處在於.detach() 保持相關聯的所有的jQuery數據與刪除的元素。

var picture = $("#picture1").detach(); 
+0

他doesn不希望元素在瀏覽器中消失。 – Barmar

+0

@Barmar這就是我對此的解釋:*更具體地說,我想從DIV中刪除圖片,然後保存HTML *。 – VisioN

+0

你是怎麼理解這一點的:_picture從屏幕上消失了,我不想發生這種情況._ – Barmar