diff --git a/hplayground.cabal b/hplayground.cabal
--- a/hplayground.cabal
+++ b/hplayground.cabal
@@ -1,5 +1,5 @@
 name: hplayground
-version: 0.1.2.9
+version: 0.1.3
 cabal-version: >=1.8
 build-type: Simple
 license: BSD3
diff --git a/src/Haste/HPlay/View.hs b/src/Haste/HPlay/View.hs
--- a/src/Haste/HPlay/View.hs
+++ b/src/Haste/HPlay/View.hs
@@ -1262,10 +1262,10 @@
   getBody :: IO Elem
   getBody= ffi $ toJSStr "(function(){return document.body;})"
 
-data UpdateMethod= Append | Prepend | Insert deriving Show
+data UpdateMethod= Append | Prepend | Insert | Outer deriving Show
 
 -- | Run the widget as the content of the element with the given id. The content can
--- be appended, prepended to the previous content or it can be the only content depending on the
+-- be appended, prepended to the previous content or it can be the internal(Insert) or external(Outer) content depending on the
 -- update method.
 at ::  String -> UpdateMethod -> Widget a -> Widget  a
 at ident= at' ('#':ident)
@@ -1281,6 +1281,9 @@
              Insert -> do
                      forElems' id $ clear >> render
                      return ()
+             Outer  -> do
+                     forElems' id $ this `outer` render
+                     return()
              Append -> do
                      forElems' id render
                      return ()
