I need to make the livereload load the entire page when there is a change in the server side page. right now I am passing the file that got changed. So how to make it to load the entire page.
thanks
What're your options in the watch list? In particular, have you set livereload:true or spawn:false anywhere?
The people on this thread are trying to prevent a browser refresh being forced, so may be of use to you...
Related
I have got a desktop application which logs into a file, opening a file called application.log each time it wants to log something, appending text and then closing it again.
I would like to create a html page showing the content of the file and automatically showing the changes.
How can I achieve this? I think that refreshing the page is not a good idea because this is not instantaneous. Maybe I need something always going in the background, constantly monitoring the file.
Or maybe when my program changes the file it should somehow notify the webpage that the file had changed, making it update the content?
You can’t do dynamic things in HTML. HTML is just a mark up language.
I haven’t done that before, but I would try to achieve it with Java Script and the reload() function every time you logged sth.
I cloned this https://github.com/Chainfrog-dev/async_flask_2, it is a Python module which communicates with a web page using sockets.
I made the obvious modifications to the code and I ended up with a terminal-style logger which automatically updates its content without the need to refresh the page.
I would like to know the mechanism behind reloading/ refreshing a Webpage. My questions are-
1. Does reloading/ refreshing a webpage that completely failed to load earlier always result in instant loading of the entire webpage correctly with all its contents?
2. Or does it result in delayed loading of the entire webpage?
3. Or does it result in delayed loading of the webpage with some contents (Ex. images) missing?
4. Or does it do nothing? ie., the page still fails to load because the server is down?
I know that all these scenarios are possible. But I would like to know what causes each of these above scenarios? (For Ex. is it the server being down or busy or the content not being available anymore?)
Also I would like to know what happens in these two cases-
->when content is fetched from a single server
->when content is fetched from multiple servers
Reloading does not always result in instant loading of the entire webpage correctly. There are many different reason a page may not load correctly, many of them simply reloading the page will not fix. There are so any reasons there really isn't time to explain here.
I should load with the same data it received before reloading the page. Unless something has changed in the interim.
If the server is down. Reloading the page will not result in the page loading correctly the second time.
When content is fetched from a single server the content comes from just that server. When content is served from multiple servers, say the images are being served from a CDN, they are loaded from those places.
Reloading a page does nothing different that when you first visit a page. Although in certain circumstances the local browser cache may be reset.
I'm using yii framework in my web app.
I have huge size website Main Navigation Menu. It's a separate file named as Menu.html.
After some parsing using php it is rendered on the browser.
So the structure is something like:
{header}
{parsingMethod(menu.html)}
{middle content}
{footer}
So, on each hit the menu is parsed and rendered.
Is there a way that, once menu is loaded on client; it stored in browser cache. so that after consecutive hit it dose not load from server each time??
Although, I'm using Memcached to store menu.html so that application don't need to read menu.html file from disk each time. But I want to save this Memcached hit also once the menu is loaded on client.
Any help is greatly appreciated!
Thanks
Ashu
As far as I understand HTML5 appcache, there is no way to cache a certain part of a page. If you don't want to go through parsing and rendering the menu on each request, you can still make use of Yii's fragment caching.
I have an appcache (with NETWORK *). So now I visit my page with <html manifest="/cache.appcache">. Then the page itself is cached as all the images are. But I want the page self to not be cached. How can I do this? I thought NETWORK * would do the trick.
Regards,
Kevin
The appcache manifest always caches the master page.
If you are using Chrome check the cached files for your page here: chrome://appcache-internals
A workaround could be to put a hidden iframe somewhere on your page, which contains the appcache file to cache offline content. (take a look at "Preventing the application cache from storing masters with an iframe" here: http://labs.ft.com/2012/11/using-an-iframe-to-stop-app-cache-storing-masters/ )
A better solution could be to write your page to fetch new content from your server when it is opened - if the server cannot be reached, it can serve the last known content from the HTML5 local storage.
I have tried the iframe work around, and find it ripe with errors. Most browsers cache the data for the iframe where the page cannot get it.
Instead make the page's content load via AJAX. Basically have a blank html page with the manifest and javascript which pulls and adds its content from the server. This way only the blank html is cached, and content is always updated from the server.
Converting a page to this method can be very difficult, but it works. Making sure the appropriate javascript gets run at the correct time, probably requires some detangling. Moving around server code which won't be called when pulling from cache to the new ajax method.
Note: no need to pull conditional content from the server if the condition is in the query string, different query strings make a separate cache
I need to create a brochure-cd from a website I did. All resources are html, images and xml, so i don't have any problem at all in accessing file system. My question is: once I open my index.html page in browser, how can I set the params of the window (eg: show addressbar, show statusbar, etc)
Thanks
(If you have an alternative idea of how run an html based brochure on CD just let me know)
EDIT: Specs changed, I've just knewn I must write xml and upload file, too. Any idea? I'm considering Adobe Air, but would be amazing if I can compile a whole .NET website into an exe..... Anything similar?
The only way you can set these is when you open the page, not after it's already present. So, you will probably have to have a start page, which then opens your new page, with the parameters you want.
Be warned though, if you have any JavaScript, many browsers won't allow scripts to run locally, or will present a nasty warning message before it will execute.
You may look into having a small desktop application on the CD that launches an instance of a browser inside of itself, assuming you can run the browser on every machine this will be run on. This will probably give you the look you're after.
I think you can't. You can only set params of a window you create. So you'll have to run a script on load that creates a new window and then closes the initial window.
There is however no way that this script is executed without warnings, if at all.
An alternative would be to develop an executable that is able to display the page, but that might not be easy, especially when you want to be browser and platform independent.