התייחסות לסטרינג כשם משתמש בJS - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

התייחסות לסטרינג כשם משתמש בJS


idofr

Recommended Posts

הי, יש לי את אותו קוד בידיוק שמשנה צבעים לפי 4 מצבים, מה שאני עושה בנתיים זה להשתמש בSWITCH אבל זה ניראה לי לא יעיל. האם יש דרך שאני יכול לקחת סטרינג שמאוחסן במשתמש ולהוציא ממנו את שם המשתמש שממנו אני רוצה למשוך מידע? לדוגמא:


var i = 'name';
var name = ['123', '456'];
wanted result , something like => i[1] = 456

תודה

קישור לתוכן
שתף באתרים אחרים

פרט והסבר. לא הצלחתי להבין מה בדיוק אתה מנסה לעשות.

יעזור גם לראות את הקוד הנוכחי שלך (ה switch שדיברת עליו) כדי להבין את דרך השימוש והתוצאה הסופית שאתה מנסה להשיג.

קישור לתוכן
שתף באתרים אחרים

להעביר בסטרינג שם משתמש אפשרי אם משתמשים ב-eval אבל זה מאוד לא מומלץ. אני לא בטוח שהבנתי מה אתה מנסה לעשות, אולי משהו כזה יעזור לך:

var options = {
name1: [123,456],
name2: [789,101]
};
var i = "name1";
return options[i][1];

קישור לתוכן
שתף באתרים אחרים

השיטה שלך ניראה סבבה תודה, אני רק רוצה באמת להראות לכם את הקוד אולי למישהו יש שיטה יותר נוחה או סתם עוד שיטה (בכל מיקרה בקשר לשינויים בCSS, אני יודע שיש דרך להכניס את כל השינויים לפקודה אחת אבל יש שם איזה באג לא ברור שגורם לזה לא לשנות כלום אם אני עושה את זה ולכן זה מפוצל למלא שורות)



var dawn = ['#fcbd8d', '#a3a7cc'];
var noon = ['#B7CFEB', '#607EA3'];
var dusk = ['#805d48', '#718db0'];
var night = ['#747EAD', '#323752'];

switch (headerBackground.day_part) {
case 'dawn':
console.log('colouring dawn');
$('#header-background').css('background-color', dawn[1]);
$('#header-background').css('background-image', ' -webkit-linear-gradient(bottom,' + dawn[0] + ' 0%,' + dawn[1] + ' 100%)');
$('#header-background').css('background-image', '-moz-linear-gradient(bottom,' + dawn[0] + ' 0%,' + dawn[1] + ' 100%)');
$('#header-background').css('background-image', 'linear-gradient(bottom,' + dawn[0] + ' 0%,' + dawn[1] + ' 100%)');
$('#header-background').css('background-image', '-o-linear-gradient(bottom,' + dawn[0] + ' 0%,' + dawn[1] + ' 100%)');
$('#header-background').css('background-image', 'progid:DXImageTransform.Microsoft.gradient(startColorstr=' + dawn[0] + ', endColorstr=' + dawn[1] + ', gradientType=1)');

$('#outside_text_logo').css('color', '#bc9f69')
$('#outside_text_logo .faqLink').css({
'color' : '#d6b474',
'border-color' : '#d6b474'
});
$('#outside_text_logo .faqLink').hover(function(){
$(this).css({
'color' : '#ead2a6',
'border-color' : '#ead2a6'
});
}, function(){
$(this).css({
'color' : '#d6b474',
'border-color' : '#d6b474'
});
});
break;
case 'noon':
$('#header-background').css('background-color', noon[0]);
$('#header-background').css('background-image', ' -webkit-linear-gradient(bottom,' + noon[0] + ' 0%,' + noon[1] + ' 100%)');
..........






קישור לתוכן
שתף באתרים אחרים

יכולת לעשות את זה פשוט ככה:

var colors
switch (headerBackground.day_part) {
case 'dawn':
colors=['#fcbd8d', '#a3a7cc'];
break;
case 'noon':
colors=['#B7CFEB', '#607EA3'];
break;
case 'dusk':
colors=['#805d48', '#718db0'];
break;
case 'night':
colors=['#747EAD', '#323752'];
break;
}
...
whateverYouWant = colors[0]; whateverYouWant = colors[1];

ואם רוצים להשתמש במה ש etal הציע:


var colorset = {
dawn:['#fcbd8d', '#a3a7cc'],
noon:['#B7CFEB', '#607EA3'],
dusk:['#805d48', '#718db0'],
night:['#747EAD', '#323752'],
};
var colors = colorset[headerBackground.day_part];
....
whateverYouWant = colors[0]; whateverYouWant = colors[1];

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...