开发者

jQuery - Loading content into div, styles not applied?

开发者 https://www.devze.com 2022-12-27 14:53 出处:网络
I\'m trying to get this content loader to work and I\'ve managed to get it to get new content, once the content is loaded it isn\'t styled correctly. Also the character \"é\" becomes a questionmark.

I'm trying to get this content loader to work and I've managed to get it to get new content, once the content is loaded it isn't styled correctly. Also the character "é" becomes a questionmark. Doctype problem? As well as the h2 tag normally having Cufon applied to it is not triggering.

So basically, this content loader require me to have a bunch of pages being esse开发者_C百科ntially the same, except for the content I want to retreice. This way, users can use the actual URL as you'd normally exect. Only when a link is clicked on an already loaded page, it's only the content from the #content div that's realle being replaced.

I can post code here, but I think it's better to just watch it happen on the testpage. It's very low on graphics btw ;)

http://www.matkalenderen.no

Just click the blue text link and you'll see it. Also, the red button on the second loaded content is supposed to revert the content back to previous. But it's not being triggered or something. What's happening?


The is because new_user.php is an ISO-8859-1 file.

XMLHttpRequest, which is used to fetch the page, defaults to UTF-8. Since XMLHttpRequest doesn't know about HTML, it will ignore the <meta> tag you have used to declare that encoding, and continue to use UTF-8, resulting in the failure to read the é encoded as a single non-UTF-8 byte.

You should either have your script send back a real header('Content-Type: text/html; charset=ISO-8859-1');, which both the browser's HTML parser and XMLHttpRequest can understand, or — probably better — just use UTF-8 for your entire site. Then you can send any Unicode character back and forth, not just a few accented letters from Latin-1.

The styling looks OK to me. The only difference I can see is the lack of font replacement on the newly-loaded content. That happens because the font replacement stuff is only run at page load time. You could call Cufon.replace('h2'); after loading the new page to do the replacement again on the new heading, or maybe consider @font-face embedding, which is starting to take over this kind of thing.


You don't have a doctype problem you have a character encoding problem.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号