Comments (5)
I solved it (albeit hackish) with the following diff. It would probably make more sense to copy the class
attr off of the new body
from the XHR request, but I wasn't sure where I could gain access to it.
diff --git a/lib/assets/javascripts/unpoly/dom.coffee b/lib/assets/javascripts/unpoly/dom.coffee
index c3fcb81..9f7ab78 100644
--- a/lib/assets/javascripts/unpoly/dom.coffee
+++ b/lib/assets/javascripts/unpoly/dom.coffee
@@ -507,6 +507,7 @@ up.dom = (($) ->
# This is a separate method so we can mock it in specs
swapBody = ($oldBody, $newBody) ->
+ $newBody.attr('class', $oldBody.attr('class')).removeClass('up-destroying')
$oldBody.replaceWith($newBody)
transferKeepableElements = ($old, $new, options) ->
from unpoly.
We should not try to keep attributes from the old <body>
, this would be inconsistent with how fragment replacement works anywhere else. Instead the attributes from the new <body>
in the response should be used.
I think the bug is here:
This is code that parses full HTML pages from the response. jQuery can make a DOM from most strings, but not strings that contain <html>
or <body>
tags.
We could fix that code. Or maybe drop IE9 support and use DOMParser
.
from unpoly.
Fixed in 0.35.0
.
from unpoly.
Works :) Thanks!
(I had to build from master as I noticed dist/ was out of date, as well as CDN, just FYI)
from unpoly.
Oops, forgot to update dist/, CDN and npm. Did that now. Thanks for the hint!
from unpoly.
Related Issues (20)
- nested up-hungry removes inner hungry elements HOT 1
- per page css
- Hide focus ring when following an [up-instant] link HOT 1
- Please support `up.reload(":none")` HOT 3
- Respect unpoly attributes on form submitters HOT 2
- snipcart with unpoly HOT 2
- Incorrect docs: Event target for 'up:form:submit' is not always the form HOT 5
- Is up-disable broken? HOT 2
- JS error when using up-submit: Uncaught up.Error: up.on(): The "up:click" callback function executeEmitAttr; EDIT: Putting the script in the end of body breaks the js HOT 2
- `up.animate` does not respect `duration: 0`
- Question: Async code in 'up:form:submit' possible race condition? HOT 2
- no transition with tailwindcss
- Web Component form field dropped by up-submit HOT 2
- Can unpoly exchange HTML fragments through WebSockets?
- Look at explicit port for cross-origin detection HOT 1
- Successfully submitting a form within a layer with the param up-layer='root' closes the layer with up:layer:dismiss and not up:layer:accept event HOT 1
- Watching fields requires multiple-values checkboxes to have a `[]` name suffix HOT 6
- Handle links with anchors that start with a number HOT 1
- Handle links with anchors that start with a number HOT 1
- Browser does not loose it's zoom state between page navigations on smartphones HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from unpoly.