What Is The Differences Between AJAX And JavaScript?
Jul 26, 2006Is AJAX built on top of JavaScript? What browsers supported AJAX?
View 6 RepliesIs AJAX built on top of JavaScript? What browsers supported AJAX?
View 6 RepliesI'm familiar with Java so I shouldn't be too lost. What I'm about to do is add support for a web app from Firefox to IE that uses OpenLayers.
I've searched and found a link to this site from another thread which had a list of supported functions and what not here: [URL]
From what I've read in the last hour it seems as though I will have to use some browser sniffing (isMozilla, isIE8, etc) and have multiple conditions (if-else's) in my functions to use the proper calls. Does anyone have extra material that contains differences between IE and firefox? Someone mentioned to me that in lists IE doesn't support trailing commas but ff does..
Does anyone know why the following code would work perfectly in FireFox but error out in IE7?
function readPageNumber() {
var split1 = document.cookie.split("=");
var split2 = split1[1].split("/"); <-- This is the line that errors
var split3 = split2[4].split(".");
var page = split3[0];
return page;
}
The error reads:
Error: Ƈ' is null or not an object.
So why does FireFox execute the code correctly and IE7 does not?
This is what im trying to achieve. At the top of my page there is some
search functionality, through which you cause to be loaded a string
representing an HTML page. Below this and occuupying about 80% of the
window real estate, there is a DIV. There is also a toggle button with
two options "Code View" and "Text View" as I have named them. Depending
on which mode you are in, you can see the block of HTML either as code
(in other words the tags are not rendered. You see the HTML as it
exists.) or as text (rendered HTML). Consider the following code, which
is a simplified version of the page.
<script language="javascript">
var mode = "code";
var s = "<html><head>
<style type="text/css">
My Stylesheet
</style>
<title>
MyTitle
</title>
</head>
<body>";
function ViewDoc()
{
if(mode == "code")
document.getElementById("docArea").innerText = s;
else
document.getElementById("docArea").innerHTML = s;
}
function ChageMode()
{
if(mode == "code")
mode == "text";
else
mode == "code";
}
</script>
<HTML><BODY>
<table>
<tr>
<td>
<input type='button' onclick='ViewDoc()' value='View Document'>
<input type='button' onclick-='ChangeMode() value='Change Mode'>
</td>
</tr>
</table>
<div id='docArea'/>
</BODY></HTML
The variable s contains an actual example of some HTML im trying to
load here (with the contents of the stylesheet omitted.)
Now, the following works fine in Internet Explorer. It does not work at
all in Mozilla Firefox. In firefox, for example, I have to cut out the
stylesheet, or the entire page goes fubar. Without the embedded
stylesheet, the "text" view (rendered html) works just fine. But the
"innerText" does not work in Firefox, and im not sure how to replicate
it.
In Firefox 2, document.getElementById is returning an HTMLDivElement,
in IE 7, it is returning an Object.
For example:
<div id="errorTableDiv">
</div>
....
errorTableDiv = document.getElementById("errorTableDiv");
alert(errorTableDiv);
errorTableDiv.appendChild(someTableNode);
Firefox prints HTMLDivElement and lets me appendChild() later on
IE prints Object and gives an error on the appendChild()
I do not understand why this happens or what the most socially
acceptable way to fix it is.
The following code results in the exact same output. Is there an advantage to using i++ over ++i (or visa-versa) in the loop? :confused:
<script type="text/javascript">
var tarr1 = []; for (var i=0; i<10; i++) { tarr1.push(i); }
var tarr2 = []; for (var i=0; i<10; ++i) { tarr2.push(i); }
alert(tarr1.join(',')+'
'+tarr2.join(','));
</script>
Similar question for the increment method in the following:
[Code]....
Mozilla/Firefox seems to be wrong when rendered elements with sizes
given in percents and that are placed into another elements with
percentage sizes, if the content overflows them (of course, overflow is
set to the value of "scroll")
To check the written above please use the given below code:
I am having a problem with a script that I am writing and I believe it is centered within a piece of jQuery code. I have some code like this (simplified slightly):
$.get('news/testfeed.xml', function(data) {
$('record', data).each(function() {
var $link = $('<a></a>')
.attr('href', $('link', this).text())
[Code].....
Ok so, this is my purpose:
- to be able to load asynchronously (via AJAX) some javascript ads (like google's or adbrite) so as to make them be loaded in the background, then update the page after the ads have loaded via innerHTML
Why?
-Because 90% of the time in my newer sites, javascript ads are the major offender in terms of speed of page rendering
My problem:
Via ajax, I can call a php file that retrieves some javascript and outputs it, XMLhttprequest returns those javascript lines, but they don't render in the page, since they miss the whole page loading, and are apparently not parsed
For example, let's say I call a php file via ajax, and it returns the output into a variable named "text" containing "document.write('hello')"
if I use xxx.innerHTML=text, nothing happens
My 1st solution:
Passing those javascript lines to eval() [like eval(text) ], but this produces a second problem, that I couldn't solve (probably because of my lack of knowledge in javascipt):
if I eval the code, it deletes my current page and renders a new one
for example, if I parse a document.write, my page disappears, and a new one is rendered with the document.write text
What I want is basically to make that "document.write" appear inside a div in my page, adding to the content (and not overwriting the whole page), much like what happens when using innerHTML
Is this even possible? How would you go about it?
I tried xxx.innerHTML=eval(outputfromphpfile) but it overwrites my whole page...
I'm seeing a difference in behaviour between
window.onload = f();
and
<body onload="f();">
Specifically, window.onload appears to fire before all the elements of
the page have been rendered. As the difference is consistent across
IE/Moz/Opera, I'm assuming it's deliberate - can anyone point me
towards where this behaviour of window.onload is defined in the
documentation? TIA. Code:
I am using Ajax to refresh a DIV area by setting the
innerHTML=request.responseText in the usual manner. in the response text I
have a <SCRIPT> tag in line, but this is not executed. Is there a way of
making the ajax refresh process this.
If the browser disable the javascript, what happen to Ajax? can i slove
the problem by using server side script? any suggestion for this?
i currently do some dirty projects with perl/cgi, and I would like to
add more client side features which relate to ajax, and do some
validation on the client side with javascript. but it is possible that
the javascript may be disable with some browsers. what can i do if the
client's broweer disable the javascript.
I'm interested in learning Javascript with an eye towards using it for
client-side user interfaces for web services, and I have a couple
questions.
First -- In reading some of the archives here, I've noticed a fairly
strongly held opinion that it is better to write purpose-built
Javascript than to use large libraries. Since this was what I was
planning on doing anyway, because of the size of the libraries and
compatibility quirks with Safari, it's nice to hear confirmation from
experts. That said, is the code in Prototype, Scriptaculous, and
OpenRico good enough to be worth reading and emulating?
Second -- I do much better with dead-tree references than with the
web, especially as a lot of the links that come up when I google for
Javascript topics are tutorials for the clueless by the clueless.
(Perl has the same problem, but with Perl I have enough knowledge to
filter the useful bits from the flat-out wrong bits.) Aside from the
O'Reilly Javascript reference (which I have) and _Ajax Hacks_ (which I
also have), are there other good references I should get my hands on?
Some servers return JavaScript as the response to an AJAX request. When
the response JavaScript is eval'ed it calls other JavaScript functions
already in the browser to update elements, etc. This seems like a good
system because it allows so much freedom in creating the desired
behavior in the browser. The required data doesn't have to be converted
to XML or JSON on the server. The browser doesn't have to have
templates for interpreting and converting this data into some change in
the browser. All of the conversion algorithms don't have to be written
and changed when new behavior is required. This remote procedure call
approach is the predominant system in the Ruby on Rails world.
(Unfortunately they are calling Prototype.js functions.)
However apparently some people seem to think this remote procedure call
approach is a bad idea. I can't see why it is so bad because it is so
lightweight and flexible. It also helps to keep the client less
intellegent which seems good in a world of incompatible client-side
bugs.
If I use some neutral data format like XML to accomdate different types
of clients then I have to write different client-side interpreters for
each type of client (browser, RSS, POP, cell phone, etc). Why not just
write different server-side code that generates the correct JavaScript
(or other) for the requesting client type?
When is the RPC approach such a bad idea?
I'm making an ajax call to return the contents for a page using the responseText property. I want to be able to define a javascript function in the page and call it, doing something like:
<script>
function test(){
alert('hi');
}
test();
</script>
However, none of the javascript in my page works. I'd imagine it has something to do with it being included as part of the responseText and the browser is not picking it up. I haven't been able to find any info about this online anywhere. Any thoughts?
Is any way to encrypt the javascrypt code ?
View 3 Replies View RelatedI am a XHTML/CSS developer with an interest in AJAX. I am at the stage were I wish to learn how it's all done.
So my quesiton is this:
To develop AJAX applications do I need to learn JAVA or Javascript?
It may sound like a dumb question considering AJAX is mainly javascript and XML, however will learning JAVA first off be a benefit?
I am currently creating a social network. On a profile if a user has comments they can delete them. I am running AJAX to update the database and display the comments refreshed (one deleted will no longer show). The data I am requesting includes the following...
<script language="JavaScript">
document.write("<a href="javascript:void(0)" 'CommentsTable', 'PostLink1', 'PostCommentText', 'ViewCommentsText')" id="PostLink1">Post Comment</a>");
</script>
<noscript>
<a href="comment.php?action=post&user=<?php echo $user; ?>">Post Comment</a>
</noscript>
My problem is that the JavaScript from the request does not work, I can only seem to display regular HTML. Is there a solution to this problem to make the JavaScript work or do I have to use an HTML alternative?
If you have your site implemented in ajax, and client browser has disabled the javaScript, then ajax won't work?
Another question is, what if you are creating the page lay out(background color, boxes, etc) in javaScript, does it mean they also won't work?
Is it just me, or is there no distinction between AJAX and Javascript nowadays? Today I saw a request for a calculator, something that should be done with just Javascript, but yet the post was seeking an AJAX developer. When did these terms become synonymous?
View 2 Replies View RelatedIn my browser, I make an AJAX request. The server sends me a fragment
of an HTML document. That fragment has some JavaScript inside some
script tags. How do I run these scripts when the fragment arrives at
the browser?
Since XMLHTTP Request does not support loading of XML from other
servers, I decided to use a trick:
load XML into hidden iframe and then get that XML with JavaScript to
parse.
But, is this a good idea? I am stuck. How do I get XML loaded in the
iframe and pass it on to JS function for parsing?
does anyone know of any way to allow for multiplayer interaction using Javascript/AJAX calls?
I am looking at two (or more) players visiting the same webpage and interacting with one another to play a text/browser based game (non-Flashed based).
Any ideas on how to do this using JS/PHP and mySQL?
I can't seem to figure out what I'm doing wrong with this no matter how many things I try. I've looked through Google for a related issue but found nothing specificThe script runs through a external .js file calling a list of music albums, then listing the song of the album chosen via ajax. The user can then edit of delete the songs. Everything works fine until I submit the edited information through a form. When I click the submit button I get a web developer error "updateSong is not a function"Here's the form which is loaded into the already existing page via ajax:
<?php
include("database.php");
$song = $_GET['song'];
[code]....
I would like to build an HTML page that has four content areas. The first with 3 links that when clicked chage what is shown in the other 3 - and so changing the default content in these sections. The content for these sections will be contained in seperate HTML files sitting on the same server.
I understand this can be done without refreshing the page and believe JavaScript and Ajax is the best method to do this. Any advice?
I am currently running a website for a medium sized company that has an application which relies heavily on AJAX. Currently, I am using DOJO, and it does a great job when it comes to cross-browser compatability. It comes with so many extras, and clients are forced to download these extras!! I have looked around at various other Javascript applications, and, while some vary in size, it seems that they are all quite large. Are these toolkits neccessary for a functioning ajax application? Must clients download an extra 30 - 150kb of js to use AJAX? In an attempt to solve this problem, I threw a script together with some help from the internet and an Ajax book that weighs in at 1.2kb. I would love to just throw this up and be done, but I don't have the testing capabilities to justify doing so. There are so many flavors of browsers, and I have access to only a few of them. Frustrating Don't really know what i'm asking, anyone else run into this frustration?
View 10 Replies View Related