|
Dennis E White wrote: have you tried debugging with Chrome??
Yes. That's what I'm using now.
Dennis E White wrote: hahaha... it's the whole this concept mixed with callback functions isn't it?
Well, sort of. I have something like the following:
var TOH = function(in_path, in_parentDiv, in_mouseOver)
{
var _array = new Array(),
_xmlFile = "",
_data1 = "",
init = function(path, parentDiv, mouseOver)
{
_xmlFile = path + "datafile.xml";
loadData();
},
loadData = function()
{
$.ajax
({
type: "GET"
,url: _xmlFile
,dataType: "xml"
,success: function(xml)
{
parseConfig ($(xml).find('Config'));
parseImages ($(xml).find('Images'));
}
,error: function(jqXHR, status, error)
{
alert(error);
}
});
},
parseConfig = function(nodelist)
{
_data1 = $(nodelist).find("Item1").text();
},
parseImages = function(nodeList)
{
if (nodeList != null)
{
$(nodeList).find('Image').each(function()
{
var count = _array.length;
_array[count] = new TreeImage(this, count, _data1, 0);
});
}
};
init(in_path, in_parentDiv, in_mouseOver);
};
In any case, I THOUGHT that the vars defined in TOH were going to be set by the functions that are also in TOH. That doesn't appear to be the case at all, and instead, the variables appear to be defined within the confines of each function, and once the function exits, the variables in TOH are unchanged from their original values. What's really puzzling is that when I call init , it properly sets the vars defined in TOH, so I'm sitting here pissed off because I don't understand why.
Another mystery is that despite having well over a dozen vars defined in TOH, only a few show up in the associated "Closures" panel in the debugger. Each var is initialized to a value when it's declared, so I don't understand why they don't show up.
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass." - Dale Earnhardt, 1997
modified 26-May-13 9:27am.
|
|
|
|
|
|
I want the actual dimensions of the image, not of it's rendered size.
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass." - Dale Earnhardt, 1997
|
|
|
|
|
|
I want to Add Number of Days with the Date object and get the New Date. i used this method to add Days
FromDate.setDate(FromDate.getDate() +12)
But this method is not working, if the month is February
EG: if the From Date is 20-02-2013, if i add 12 Days with this date, will get result as 01-03-2013.
Is there any other method to add days and check its leap year or not
|
|
|
|
|
Are you sure you're looking at the correct month? In JavaScript, the Date object uses a zero-based month, so if getMonth returns 2, the date is in March.
var date = new Date(2012, 01, 20);
date.setDate(date.getDate() + 12);
alert(date);
"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer
|
|
|
|
|
Can you give an example of your code that isn't working?? I tried the following and it all appears to be working just fine.
http://jsfiddle.net/SrVvn/[^]
as if the facebook, twitter and message boards weren't enough - blogged
|
|
|
|
|
Hi Robymon,
The example you have given is incorrect.
Adding 12 days to 20-02-2013 will not give result as 01-03-2013, but will give 04-03-2013
The solutions given by "Richard Deeming" and "Dennis E White" are correct.
Thanks & Regards,
Niral Soni
|
|
|
|
|
hi to all
i have a string with this format
x=numbery=datez=number...
for example of this string can be :
x=123y=2013/02/01z=12345p=111
i want a function that get me this
x=123
y=2013/02/01
z=12345
p=111
how can i do this?
note to this point that my string can not be change and add extra character to this string
thanks in advance
|
|
|
|
|
There is usually many ways to do string manipulation but one way would be to split on the = and then you'll have the rightmost character to be the starting of your next string. You'll have to put in a case for the first one.
Or, just loop through each character and process.
There are only 10 types of people in the world, those who understand binary and those who don't.
|
|
|
|
|
you have to define what are the valid characters that can be on the left hand side of the '=' sign. in other words can you have something like the following?
pa1n=1234h1nd=4321gr33d=6789
pa1n=1234
h1nd=4321
gr33d=6789
that gets a lot more difficult vs if you only allow stuff on the left to be alpha characters and then stuff on the right to be numeric and special characters.
sounds like a homework question from a programming class.
as if the facebook, twitter and message boards weren't enough - blogged
|
|
|
|
|
function splitString(myStr) {
var regex = new RegExp(/[a-z]+[0-9]*[a-z]*=/ig);
var keyPairs = myStr.match(regex).join('').split('=');
var valuePairs = myStr.split(regex);
document.write('======== Start ==========<br/>');
document.write('INPUT: ' + myStr + '<br/>');
var map = {};
for(var i = 0; i < keyPairs.length - 1; i++) {
map[keyPairs[i]] = valuePairs[i+1];
}
for(key in map) {
document.write(key + ' = ' + map[key] + '<br/>');
}
document.write('======== End ==========<br/><br/>');
}
splitString('x=123y=2013/02/01z=12345p=111');
splitString('pa1n=1234h1nd=4321gr33d=6789');
Thanks & Regards,
Niral Soni
|
|
|
|
|
I have the following code. The problem is that the xml file is being read (it's displayed in FireBug's Console tab), but the success code is not being executed (I can't step through it in the debugger). What am I doing wrong?
$.ajax(
{
type: "GET",
url: _cfgDataFile,
dataType: "xml",
success: function(xml)
{
var configNodes = $(xml).find('Config');
parseConfigNodes(configNodes);
var imageNodes = $(xml).find('Images');
parseImages(imageNodes);
var dataNodes = $(xml).find('Data');
parseData(dataNodes);
}
});
(I'm using FireFox/Firebug for debugging.)
EDIT =====================================
I added code to get any error that might be happening, and this is what was returned:
[Exception... "Failure" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: http://localhost:1437/testwebsite/Scripts/jquery-2.0.0.js :: .send :: line 7713" data: no]
It turns out that the problem is actually in FireFox/FireBug. In IE, the code works fine. The world is now officially inside out because FireFox has now managed to out-suck IE.
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass." - Dale Earnhardt, 1997
modified 21-May-13 10:14am.
|
|
|
|
|
John Simmons / outlaw programmer wrote: It turns out that the problem is actually in FireFox/FireBug. In IE, the code works fine. The world is now officially inside out because FireFox has now managed to out-suck IE.
Have you tried this in Chrome?? I am a bigger fan of trusting V8 vs the firefox or IE javascript engines.
At first glance it doesn't look like you are doing anything wrong. I don't see which domain you are heading to and where you are starting from. Typically that error message comes when you are doing cross-domain stuff and most security settings prevent this from happening.
as if the facebook, twitter and message boards weren't enough - blogged
|
|
|
|
|
The file I'm trying to load is in the same folder as the script. Domains shouldn't be an issue (as far as I know).
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass." - Dale Earnhardt, 1997
|
|
|
|
|
|
Haven't tried it with chrome. I'm okay with using IE (v10) for now. Will check it against chrome later (maybe at home tonight), but FF is the only browser I've seen this mentioned for. I don't like Chrome, mostly I haven't sat down and tried to finger out how to make the search bar visible *all* of the time.
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass." - Dale Earnhardt, 1997
|
|
|
|
|
John Simmons / outlaw programmer wrote: I don't like Chrome
I kind of feel the same about IE.
I like Chrome for it's development tools which IMO are far superior to IE and much better than what you get with Firefox. I used to use Firefox/Firebug because it was better than what IE gave... go figure.
I am sure in the future my browser preference will change again.
as if the facebook, twitter and message boards weren't enough - blogged
|
|
|
|
|
Go back and try IE again - the dev tools have gotten better!
|
|
|
|
|
Jasmine2501 wrote: Go back and try IE again - the dev tools have gotten better!
I don't have a motivation just yet to leave Chrome. also since Node.js is built on top of V8 I am thinking that for now it makes sense to stay put.
at least until I begin to hate Chrome.
as if the facebook, twitter and message boards weren't enough - blogged
|
|
|
|
|
Yeah I'm just saying use both. Sometimes I can't figure something with Chrome tools and IE tools can let me find it out. Also, IE8 is the company standard, so I at least have to test with it. I feel ya though, I prefer Chrome too, so I ignored the IE tools for a long time - that wasn't wise.
|
|
|
|
|
I can usually stumble around with IE tools and get what I want. I will be happy when I no longer have to stumble around with IE8.
but it's probably like programming languages, the language you are "native" to will always be the one that you program the fastest in.
as if the facebook, twitter and message boards weren't enough - blogged
|
|
|
|
|
You can not catch anonymous functions like that in the debugger. If you want to step through it, you need to extract it into a named function.
function ReadXml(xml) {
var configNodes = $(xml).find('Config');
parseConfigNodes(configNodes);
var imageNodes = $(xml).find('Images');
parseImages(imageNodes);
var dataNodes = $(xml).find('Data');
parseData(dataNodes);
}
$.ajax(
{
type: "GET",
url: _cfgDataFile,
dataType: "xml",
success: ReadXml(xml);
});
|
|
|
|
|
I tried it that way too.
When I switched to IE, it was fine.
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass." - Dale Earnhardt, 1997
|
|
|
|
|
You mean IE allows you to step into anonymous functions like the original example?
|
|
|
|