PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Der Webdesign-Fragen-Thread



quero
13.08.2010, 13:34:38
Allgemeine Fragen zu Webdesign hier hinein.
(@Mods: Danke)


Meine Frage:

Hab mich nunmehr an ein CMS (CMSMS (http://www.cmsmadesimple.de/)) gewagt und schreib nun grad an einem Menü in Smarty (Erfahrung==NULL) herum.
Ziel ist es hinter alle Top-Listenelemente eine weiteres Element mit einem Trennstrich
automatisch einfügen zu lassen, dabei aber untergeordnete Listen auszuschließen.

Der Code:


{* CSS classes used in this template:
#menuwrapper - The id for the <div> that the menu is wrapped in. Sets the width, background etc. for the menu.
#primary-nav - The id for the <ul>
.menuparent - The class for each <li> that has children.
.menuactive - The class for each <li> that is active or is a parent (on any level) of a child that is active. *}
{if $count > 0}
<div id="menuwrapper">
<ul id="primary-nav">
{foreach from=$nodelist item=node}

{if $node->depth > $node->prevdepth}

{repeat string="<ul>" times=$node->depth-$node->prevdepth}
{elseif $node->depth < $node->prevdepth}

{repeat string="</li></ul>" times=$node->prevdepth-$node->depth}
</li>
{elseif $node->index > 0}</li>
{/if}
{if $node->parent == true or ($node->current == true and $node->haschildren == true)}
<li class="menuactive menuparent"><a class="menuactive menuparent"
{elseif $node->current == true}
<li class="menuactive"><a class="menuactive"
{elseif $node->haschildren == true}
<li class="menuparent"><a class="menuparent"
{elseif $node->type == 'sectionheader'}
<li class="sectionheader"><span>{$node->menutext}</span>
{elseif $node->type == 'separator'}
<li style="list-style-type: none;"> <hr class="separator" />
{else}

<li><a
{/if}
{if $node->type != 'sectionheader' and $node->type != 'separator'}
href="{$node->url}" {if $node->accesskey != ''}accesskey="{$node->accesskey}" {/if}{if $node->tabindex != ''}tabindex="{$node->tabindex}" {/if}{if $node->titleattribute != ''}title="{$node->titleattribute}"{/if}{if $node->target ne ""} target="{$node->target}"{/if}><dfn>{$node->hierarchy}: </dfn><span>{$node->menutext}</span></a>
{elseif $node->type == 'sectionheader'}
><dfn>{$node->hierarchy}: </dfn><span>{$node->menutext}</span></a>
{/if}

{/foreach}

{repeat string="</li></ul>" times=$node->depth-1} </li>




</ul>

<div class="clearb"></div>
</div>
{/if}



..verwirrt mich jedoch gerade vollends und ich hoffe, dass sich vielleicht jemand findet, der sowas schonmal gemacht hat und mir einen Ansatzpunkt liefern kann.

Vielen Dank schonmal im Vorraus.

BaShoR
13.08.2010, 13:43:52
http://www.codeassembly.com/Why-template-systems-like-smarty-are-useless-and-sometimes-bad/

Smarty ist schlecht gemacht, aufgeblasen, nicht optimiert.
Schreib da lieber was eigenes und benutz eine Cache Klasse, damit bist du besser dran. Smarty lernen ist einfach unnötig...

quero
13.08.2010, 14:43:01
Hmm, danke erstmal, habs jetzt erstmal nach hinten geschoben, da das zuviel Zeit frisst.
Den Artikel hab ich angelesen und werd mich später genauer mit beschäftigen.

Jacky
09.09.2010, 22:36:58
Hab auch mal ne Frage....
Da ich mich mit PHP kaum auskenne, frag ich euch mal ob ihr mir helfen könnt. Ich habe eine kleine Seite für ein paar Kollegen eingerichtet, die mit mir gemeinsam bei der formel1 in Belgien gearbeitet haben um ihnen den Download meiner Fotos zu ermöglichen.
Mich würde allerdings interessieren wie ich es anstelle hinter den Downloadlinks die Anzahl der Klicks anzeigen zu lassen.
Hier erst mal der Link (www.flashmob-graz.at/belgien). Der code ist im Moment rein html. Ihr könnt also den kompletten Code einsehen.


Falls ihr jetzt glaubt "Da muss mehr sein als html wegen dem wechselnden Hintergrund": der wechselnde Hintergrund ist nicht php, Java oder sonstiges, sondern DSS (Dynamic Style Sheet) ;)
Der Code selbst ist reines statisches HTML ^^

Lg Tom

BaShoR
10.09.2010, 13:14:55
Naja, du müsstest auf eine PHP Datei verlinken die jeden Visit zählt und speichert und dann entweder auf die andere datei per header Location weiterleitet oder die andere Datei über dem Setzen des MIME Headers streamt (also quasi einfach ausgibt).
Hoffe ich hab dir nun genug Stichpunkte gegeben um das zu realisieren und die Themengebiete zu suchen.
Weil jetzt das alles genauer zu erklären und zu vertiefen würde etwas den Rahmen sprengen.
Achja, das ganze kann man dann natürlich auch per mod_rewrite aufhübschen indem man dann einfach jeden Link einer bestimmten Art, also zB. /dateien/([A-Za-z0-9)+].rar auf download.php?=file.php?name=$1

Nunja, wenn du noch weitere Fragen hast erklärs ich es dir gerne :D

Jacky
10.09.2010, 13:44:09
Danke erstmal... Ich werd mal schaun ob ich da was passendes dazu finde!!

confector
10.09.2010, 15:01:42
Schau dir mal piwik.org an. Das ne Opensource Alternative zu GA. Trackt auch Downloads :)
Wenn du keine komplette Statistik willst vllt eher nen Script? Dann such mal bei google. Gibt es einiges zu.

Jacky
10.09.2010, 16:20:57
Danke Confector...
Habs aber schon geschafft mit dem Tipp von wire einfach auf eine andere Seite umzuleiten.

Für alle die wissen möchten wie:
Hab einfach eine php Seite gemacht mit einer Weiterleitung zum Download.
Die php file liest einfach eine txt file aus, erhöht die darin enthaltene Zahl um 1 und speichert sie wieder.

<?php
$datei = fopen("tom_01.txt","r+");
$counterstand = fgets($datei, 10);
if($counterstand == "")
{
$counterstand = 0;
}
$counterstand++;
rewind($datei);
fwrite($datei, $counterstand);
fclose($datei);
?>



Einfach, primitiv aber funktioniert^^
Den Link hab ich _blank gemacht und mit Javascript schließt sich das neue Fenster wieder nach 500ms

<script language="JavaScript">
function schliessen()
{setTimeout('window.close()',500)}
</script>

<body onload="schliessen()">


Den Counter anzeigen lass ich dann einfach via echo

<?php $datei = fopen("forward/tom_01.txt","r"); $counterstand = fgets($datei, 10); echo $counterstand; fclose($datei);?>

BaShoR
10.09.2010, 16:37:39
Du könntest auch auf deine Zähldatei verlinken beim download und in deine PHP datei das reinschreiben:


header('Location: datei.rar');

Wobei datei.rar ein relativer Pfad ist.
So sparst du dir eig das Javascript.

Jacky
12.09.2010, 00:34:51
wie meinst das genau?

Verstehs nicht so ganz^^

EDIT:

Wie viele Beiträge muss man eigentlich bewerten um jemanden erneut bewerten zu können? Hab schon ziemlich viele Beiträge bewertet seit ich dir das letzte mal grün gegeben hab. Jetzt kann ich dir aber immer noch kein grünes geben!

BaShoR
12.09.2010, 09:09:06
http://php.net/manual/de/function.header.php

Du kannst über Header zum Beispiel den Ort vorgeben den der Browser besucht, der Header hat eigentlich sehr viele Informationen, MIME Typ, Request, Location, Referrer usw. Das sind alles Informationen mit denen der Browser und der besuchte Server arbeiten. Der Header ist auch dazu da damit der Browser überhaupt weiß was er macht.
Und wenn du den header nun auf einen anderen Ort setzt bekommt der Besucher davon eigentlich meist nichts mit da es keine Javascript umleitung ist, der Server gibt einfach einen anderen Header aus. Kann man zwar aussschalten zb. im FF aber das haben die wenigsten (2%?).
Den Header musst du jedoch setzen BEVOR irgendeine andere Ausgabe im Browser geschehen ist da man dies nur einmal machen kann pro Aufruf, denn wenn du irgendwas per echo oder sonstiges ausgibst hat der Browser schon seinen Header auf text eingestellt. Aber in deinem Download-Click-Script sollte das ja möglich sein da die PHP Datei eh nur Serverinternes macht und den Wert erhöht.

Tauli
15.09.2010, 17:41:17
Hätte auch mal ne Frage,
und zwar gehts um Folgendes: Ich hab seit kurzen aus Spaß an der Freude auch nach ewigkeiten mal wieder an einer HP gebastelt und stehe nun vor folgendem Problem.
Hab meine Navi per Switch-Include in PHP gestaltet und läuft auch eigentlich. Zumindest dann wenn ich sie auf meinem Rechner, über XAMPP aufrufe. Sobald ich diese auf meinen (gratis)Webspace, der aber auch PHP unterstützt, hochlade werden mir Fehler ausgegeben.
Könnt mir einer von euch hier vielleicht einen Rat geben, was zu ändern wäre ? :(

Navi sieht wie folgt aus:

<a href="index.php?site=home" title="Home">Home</a>
<a href="index.php?site=portfolio" title="Portfolio">Portfolio</a>
<a href="index.php?site=about" title="About">About</a>
<a href="index.php?site=links" title="Links">Links</a>
<a href="index.php?site=impressum" title="Impressum">Impressum</a>


Content bereich so:


<?php
if(isset($_GET['site'])){
switch($_GET['site']){
case 'home':
include('./php/home.php');
break;
case 'portfolio':
include('./php/portfolio.php');
break;
case 'about':
include('./php/about.php');
break;
case 'links':
include('./php/links.php');
break;
case 'impressum':
include('./php/impressum.php');
break;
default:
include('./php/home.php');
break;
}
} else {
include('./php/home.php');
}
?>




Fehlermeldung wenn die Seite online ist wie folgt:

Warning: include(./php/home.php) [function.include]: failed to open stream: No such file or directory in /users/tauli/www/Index.php on line 49

Warning: include() [function.include]: Failed opening './php/home.php' for inclusion (include_path='.') in /users/tauli/www/Index.php on line 49

Läuft aber wie gesagt reibungslos, wenn ich dies offline mit XAMPP aufrufe und Pfade sind dementsprechend auch korrekt. o.O

Jacky
15.09.2010, 21:16:35
da muss irgendwo ein Pfad nicht ganz stimmen... Kontrollier nochmal genau nach, ob auch alle Pfade dort hinweisen wo auch die file ist. Bei include musst immer ein wenig um die Ecke denken, weil der Pfad ja nicht von der Datei weg geht sondern von der Index, falls du weißt was ich mein.

Tauli
15.09.2010, 22:07:17
Ja weiß ich, zum ersten mal mach ich so etwas nicht, nur in PHP bin ich ne Art Neueinsteiger. ;)
Aber wie erwähnt sind meines Erachtens nach alle Pfade korrekt angegeben, habe es auch schon mit einem übergeordneten Ordner probiert und auch ohne, aber hilft alles nichts. :/

M4c
15.09.2010, 23:07:06
Wie sieht denn deine Ordnerstruktur aus?
Also wo liegt die Index und wo die einzubindenen Dateien.

Jacky
15.09.2010, 23:09:01
Die Fehlermeldung sagt eben genau das dort wo es angegeben ist, keine Datei mit diesem namen vorhanden ist.

Wieso steht eigentlich ein ./ vorm php? Wenn die Index im Root Verzeichniss liegt, gehst du damit einen Ordner UNTER das Root verzeichniss und dort wird dann nach der Datei php/home.php gesucht. Ich tippe mal das dort der Fehler liegt. Ohne dem ./ gehts warscheinlich.

Deshalb meinte ich eben das du immer von der index ausgehen musst^^
Deine Verlinkung würde passen wenn deine Index in einem Unterordner deines root Verzeichnisses liegt, und die includeten files in einem Ordner daneben. Also zB so:
{root_Ordner}/html/index.php
{root_Ordner}/php/home.php

EDIT:
@m4c
genau das gleiche wollte ich zuerst auch schreiben, dann bin ich aber doch wieder genauer geworden :D

Tauli
15.09.2010, 23:35:26
Hmm ok, hatte es zuvor schon ohne den Punkt probiert hatte aber nichts gebracht. Jetzt hab ich noch den "/" entfernt und nun gehts. :wall:
Sollte mich vielleicht doch noch etwas mehr wieder einlesen bevor ich weitermache...:redface:

Aber vielen Dank euch zwei, wäre da glaub ich ohne eure Anmerkung nicht drauf gekommen. :rolleyes:

BaShoR
16.09.2010, 11:50:28
Achja, benutz auch statt ./ ../ da Windows ./ nicht kennt aber ../ (warum auch immer), auf jedenfall kann Linux beides :X

Jacky
16.09.2010, 14:20:31
Wusste ich auch noch nicht. Benutz zwar eh immer ../ aber Danke trotzdem!

Jacky
17.09.2010, 16:40:25
Schon wieder ich^^

Ich würde gerne eine kleinigkeit machen für meine Navigation.
Es soll wenn ich über die Menüleiste fahre ein horizontaler leicht glühender Strich mit einem kleinen glühenden Dreieck, der quasi auf den Text zeigt, über dem Text erscheinen und meiner Maus folgen und wieder verschwinden wenn ich aus der Menüleiste rausgehe.
Die Menüleiste schaut im Moment so aus:
http://www.abload.de/img/screenhunter_01sep.171wv4g.jpg
Ein Teil des oberen Strichs soll sozusagen anfangen zu glühen und das kleine Dreieck soll dazu kommen und dem horzintalen Verlauf der Maus folgen.

Das ganze soll so ähnlich wie hier (www.rvv-epona.at) aussehen, nur eben in der abgewandelten Form wie ich es beschrieben habe...

Hoffe mal das ist nicht ZU aufwendig :D

confector
17.09.2010, 17:04:30
Schau dir mal die verschiedenen "Lavalamp" Scripts an.
Hier zum Beispiel als Plugin für jQuery: http://plugins.jquery.com/project/lavalamp2

Jacky
18.09.2010, 17:59:03
Danke erstmal, aber die Dinger passen nicht so wirklich in mein Konzept. Sind zu... ich weiß nicht richtig... passen einfach nicht :D

Ich hatte heute noch eine andere Idee. Ich hab ja auch noch ein Untermenü zu den verschiedenen Seiten, und wollte diese Horizontal darunter einblenden.
Jetzt hab ich mir gedacht, vielleicht wäre es möglich einfach die Untermenüs einfaden zu lassen, wenn man über den Menüpunkt fährt. Das Untermenü soll dann solange dort stehen bleiben, bis ich entweder die Seite neu Lade weil ich einen Menüpunkt anklicke, oder über einen anderen Hauptmenüpunkt gefahren wird und eben dieses eingefadet und das andre ausgefadet wird.

Denke mal das ist sicher einfacher zu realiesieren. Aber wie^^
Google will mir da nicht viel dazu ausspucken, weil ich einfach bei JS noch blutiger Anfänger bin. Bisher nur das eine oder andre fertige Script eingebaut und minimalst verändert.

BaShoR
18.09.2010, 19:08:41
http://snook.ca/archives/javascript/jquery-bg-image-animations/
http://net.tutsplus.com/tutorials/html-css-techniques/use-sprites-to-create-an-awesomeness-filled-navigation-menu/

Sowas?

Und fadeIn() und fadeOut() sind in jQuery wohl die funktionen die du suchst. http://api.jquery.com/category/effects/fading/ Einfach dann über Klasse oder ID selektieren, ist ja in jQuery sehr einfach :X
Und über children() und parent() kannst dann in der Navigation auch noch auf weitere Elemente zugreifen. Oder du baust es anders mit mehreren ID's. Einfach kreativ sein :)

Jacky
18.09.2010, 20:47:46
OK... danke, das hat mir schon sehr viel geholfen!!

Jetzt steh ich aber vorm nächsten Problem. Ich hab jetzt mittels fadeIn und fadeOut soweit mein Vorhaben verwirklicht.
3 Dinge passen mir aber nicht ganz.

1. Bin ich mir sicher das sich der Code um einiges Vereinfachen lässt, ich aber keine Ahnung hab wie ich das anstellen sollte. Ist jetzt zwar nicht so ein problem, weils eh nicht viel ist, aber für die Zukunft wärs interessant.
Bevor ich jetzt den ganzen Code hier schreibe, poste ich einfach den Link, dann könnt ihrs direkt anschauen. www.cssmapping.bplaced.de/stcomputer
Hab im head das Script eingefügt und mit meiner Imagemap gekoppelt. Die "einzufadenten" Elemente hab ich einfach als div in den Content gesetzt.

2. Würde ich gerne die div's ineinander faden lassen. Jetzt klappt das div was aus fadet nach unten wärend dem faden, und das nervt gewaltig. Wie könnte ich das realisieren?

3. Ich kann dich immer noch nicht bewerten :ugly:
Wie viele muss ich noch bewerten bis ich dich wieder mit grünem bewerfen kann?^^

EDIT:
Ok... Problem 2 wäre mit postion:absolute in den Griff zu kriegen. Würde mich aber interessieren ob jemand eine andere Methode kennt. Denn die perfekte Methode ist es nicht weil ich so nicht mehr ordentlich zentrieren kann -.-

BaShoR
18.09.2010, 21:22:48
$('#clickme').click(function() { $('#book').fadeOut('slow', function() { // Animation complete. }); });

Mach doch das fadeIn dann einfach da wo // Animation Complete steht, dann führt das jQuery nacheinander aus.
Kürzen ist ein eher anderes Thema, mit JQeury jedoch gut möglich, schau dir einfach die Docs an ob es für bestimmte Codeansätze schon eine fertige Funktion bei jQuery gibt.

Jacky
18.09.2010, 21:41:27
hab ich jetzt so versucht...


$("area.home").mouseenter(function(){
$("div.computer2").fadeOut(1000, function() {
$("div.home2").fadeIn(1000); });
$("div.unternehmen2").fadeOut(1000, function() {
$("div.home2").fadeIn(1000); });
$("div.service2").fadeOut(1000, function() {
$("div.home2").fadeIn(1000); });


Also fadeOut, dann noch ne function hinzu und dort rein das fadeIn. Funktioniert aber nicht. Es wird immer noch verschoben und gleichzeitig ausgeführt.
Ausserdem wärs mir erhlich gesagt lieber wenns gleichzeitig passiert.

Hab nochmal die aktuelle Version hochgeladen.

EDIT:
Hmmm... Es funktioniert nur wenn ich die funktion nur bei einem fadeOut mache. dann aber auch nur bei dem Menüpunkt...

Sprich wenn ich diesen Code habe:

$("area.home").mouseenter(function(){
$("div.computer2").fadeOut(1000, function() {
$("div.home2").fadeIn(1000); });
$("div.unternehmen2").fadeOut(1000);
$("div.service2").fadeOut(1000);
});
Dann funktioniert es das es nacheinander arbeitet, aber nur wenn vorher der Menüpunkt "computer" eingeblendet war. Sobald ich die Zusätzliche funktion bei den anderen menüpunkten einfügen will, gehts nicht mehr.
Sprich ich müsste für jeden einzelnen Menüpunkt eine eigene mouseenter funktion machen... loool... der Code wird immer länger -.-

Dennoch wärs mir lieber wenns gleichzeitig gehen würde.

EDIT2:
Mann... das oben durchgestrichene funktioniert auch nicht -.-

M4c
19.09.2010, 01:16:09
Das kommt drauf an wie gut du dich mit JavaScript auskennst :D
Auf deiner Beispielseite wurde es wohl mit einem der zahlreichen JS-Frameworks umgesetzt.

Jacky
19.09.2010, 10:27:58
Wenn ich mein JavaScript wissen in Prozent angeben müsste, würde ich sagen es liegt so zwischen 1% und 3%^^

Wie gesagt, bisher hab ich nur fertige Scripts, wie highslide etc. implementiert und kleine änderungen gemacht. Erst gestern hab ich angefangen mich ein klein wenig einzulesen. Aber diese ganze Scriptsprache ist so komplexx, das ich nicht richtig weiß wo ich anfangen soll :ugly:
Vor allem da ich nicht vorhabe mich perfekt auszukennen, sondern nur damit ich in etwa weiß was zu tun ist wenn ich kleinigkeiten wie diese hier verwirklichen oder anpassen will.

confector
19.09.2010, 15:20:58
Warum machst du die Navigation denn als Bild? Würde es als horizontale Liste machen die in einem Div (dem grünen Rahmen) nach unten verschoben ist und ihn so an den jeweiligen stellen verdeckt.
Poste gleich mal meinen code dazu..

€: sooo.. Script total gekürzt und jetzt gibts auch nen schöneres Markup. Ohne imgmap etc... Farbe darfst du bitte selber anpassen :)


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Ulbel & Freidorfer - Ihre Steirische Computergesellschaft</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<style type="text/css">
#navigation {
width: 800px;
border: 1px solid #000;
height: 20px;
}
#navigation ul {
list-style: none;
width: 100%;
margin: 0; padding: 0;
text-align: center;
position: relative;
}
#navigation ul li {
float: left;
width: 20%;
margin: 0; padding: 10px 0 0 0;
height: 20px; line-height: 20px;
}
#navigation ul li a {
background-color: #fff;
padding: 0 10px;
}
#navigation ul ul {
position: absolute; left: 0;
display: none;
}
</style>
<script type="text/javascript">
$ (document).ready(function() {
$(" #navul").children("li").hover(function(){
$(this).find("ul:first").fadeIn("1000");
$(" #navul").children("li").not(this).children("ul").fadeOut("1000");
});
});
</script>

</head>

<body>
<div id="wrapper">
<div id="navigation">
<ul id="navul">
<li>
<a href="?site=home">
Aktuell
</a>
<ul>
<li><a href="?site=nachruf">Nachruf</a></li>
<li><a href="?site=shanghai">Office Shanghai</a></li>
<li><a href="?site=20jahre">Jubiläum</a></li>
<li><a href="?site=bbg">Großauftrag BBG</a></li>
<li><a href="?site=lager">Hochregallager</a></li>
</ul>
</li>
<li>
<a href="?site=computer">
Computer
</a>
<ul>
<li><a href="?site=computer">Unsere Computer</a></li>
<li><a href="?site=abverkauf">Abverkaufsliste</a></li>
<li><a href="?site=northern">Northern PC</a></li>
</ul>
</li>
<li>
<a href="?site=unternehmen">
Unternehmen
</a>
<ul>
<li><a href="?site=leistung">Leistungsangebot</a></li>
<li><a href="?site=jobs">Jobs</a></li>
<li><a href="?site=wien">Office Wien</a></li>
<li><a href="?site=shanghai">Office Shanghai</a></li>
<li><a href="?site=geschichte">Firmengeschichte</a></li>
</ul>
</li>
<li>
<a href="?site=service">
Service
</a>
<ul>
<li><a href="?site=service">Serviceformular</a></li>
<li><a href="?site=hotline">Hotline</a></li>
<li><a href="?site=technik">Technische Abteilung</a></li>
</ul>
</li>
<li>
<a href="?site=helpline">
Helpline
</a>
</li>
</ul>
</div><!-- /navigation -->
</div><!-- /wrapper -->
</body>
</html>

Jacky
19.09.2010, 18:36:32
Das war sehr nett mir das zu machen, passt mir nur leider nicht ganz. :surprised:
Der Border ist mir viel zu kantig, da gefällt mir das Bild viel besser. Das war auch der Grund warum ich es mit einer imagemap gemacht habe und nicht mit dem Border.

Ausserdem gehen sich auf deine Art leider nicht alle Untermenüpunkte in einer Zeile aus und stehen dann untereinander, da das menü ja nicht die vollen 800px hat, sondern nur 600px,.
OK, das würde sich bestimmt irgendwie in der CSS beheben lassen, bin aber mittlerweile nach langem hin und her probieren mit meiner jetzigen Lösung eigentlich eh ganz zufrieden.

Aber danke trotzdem für die mühen!!
Ich versuch grad den Javacode zu verstehen, merke dann aber das ich mich echt noch vieeeel zu wenig auskenne um auch nur diesen kleinen Code zu lesen^^

EDIT:
OK... so halbwegs hab ich den js code jetzt verstanden^^

confector
19.09.2010, 20:12:00
Also bitte bitte verwende nicht die imagemap! Außerdem lassen sich da hover effekte für die erste Schriftzeile sehr schwer realisieren.
Mach deinen Rahmen als Hintergrundbild für meinen #navigation div? dann kannst du alles so Rund machen wie du willst. Die größen musst du halt anpassen bis alles reinpasst.. CSS kannst du doch?

Jacky
20.09.2010, 07:38:07
jaja, css kann ich. is eine gute idee den rahmen als bild zu machen.
aber was ist eigentlich so schlecht an der imagemap? das sie von google nicht interpretiert wird wär ja nicht so schlimm, und hover brauch ich auch nicht unbedingt.

confector
20.09.2010, 14:58:27
Nachteile einer Imagemap als Navigation
- kein Hovereffekt (außer mit JS und Bildern)
- zwar Tastaturnavigation, aber es ist nicht sichtbar wo auf der Map man gerade ist
- wenn Grafiken deaktiviert sind gibt es nurnoch eine "blinde" Navigation
- keine Suchmaschinenerkennung

Imagemaps haben ihre Existenzberechtigung, aber meiner Meinung nach nicht als Navigation..

Jacky
20.09.2010, 15:21:56
Ok, hast mich überzeugt^^

Danke nochmal für den Code ;)
kannst du mir nur vllt. erläutern was das .find im js code bewirkt?

confector
20.09.2010, 16:32:17
Das sind alles jQuery Funktionen.. Die haben ne sehr übersichtliche und ausführliche Dokumentation zu ihren Funktionen:
http://api.jquery.com/find/

€: Da poste ich nen Link und lerne auch wieder was dazu..


<script type="text/javascript">
$ (document).ready(function() {
$("#navul").children("li").hover(function(){
$("ul:first", this).fadeIn("1000");
$("li", "#navul").not(this).children("ul").fadeOut("1000");
});
});
</script>

- dass funktioniert genauso gut, ohne find() :)
Children darf man hier allerdings nicht gegen diese Kurzform austauschen! Children findet nur den kram EINE Ebene drunter, find in ALLEN Ebenen drunter.

Jacky
20.09.2010, 17:42:25
hmm. komisch. auf der seite hab ich eigentlich nach dem find gesucht und nix gefunden ^^
danke für die aufklärung!
-----

So Leute.... wiedermal ein Problemchen hier!!

Der Webdesigner unseres Paintballteams hat uns hängen gelassen und wir müssen uns selbst drum kümmern. Ich selbst hab leider keinen IE (funzt irgendwie net. kp warum) aber mir wurde gesagt das im IE8 die Navigation nicht funktioniert. Diese ist ein Flashmenü. Sie wird angeblich gar nicht angezeigt oder so ähnlich.

Könnte da mal jemand reinschaun und mir sagen was da los is?

www.psv-werndorf.at

BaShoR
23.06.2011, 16:50:53
www.browsershots.org ;)

http://kb2.adobe.com/cps/415/tn_4150.html

IE braucht eine Extrawurscht, und eine Navi als Flash ist nicht gut. Erstens mag das Google nicht (Google sieht die Navi garnicht), zweitens sehen das Mobile-User nicht.
Und das Tabellenlayout ist furchtbar, Tabellen enthalten Daten. Keine Seitenlayouts. Das ist im Jahr 2011 eigentlich ein absolutes Nogo!

Jacky
23.06.2011, 17:00:52
browsershots is leider down...

Das die seite ******** hoch 5 is weiß ich eh^^
Hab aber momentan keine große Lust sie neu zu machen. Ich will nur das sie halt läuft ;)

Werd mir das aus dem Link mal anschauen und versuchen. Wenns nicht klappt meld ich mich wieder. Danke!!

Tauli
20.09.2011, 17:52:51
Es lebe die Threadnekrophilie^^

Nabend allerseits, hätte da einmal eine Frage bezüglich CSS Gestaltung, auch wenn solche fragen ja Google sei Dank eher überflüssig sind habe ich auf mein Problem keine richtige bzw. funktionierende Antwort bzw. Lösung gefunden.
Aber nun zu meiner Frage:

Und zwar möchte ich meinen Footer an das untere Ende meines sich dynamischen vergrößernden(height only) Content heften. Hab aber nach Stundenlangen herum basteln und testen nichts nennenswert herausbekommen. Hatte den Footer zwar schon am unteren Bildschirmrand geheftet aber das ist ja nicht das Ziel meiner Reise.^^
Habe es auch schon einmal mit wrapper+push div probiert aber das ging auch nicht gut.
Es kann auch sein, dass ich einfach nur ein Brett vorm Kopf habe oder doch zu blöd für Google bin, ich weiß es auch nicht.^^


HTML Aufbau:


<div class="contentheader">
Inhalt
</div>
<div class="content">
Inhalt
</div>
<div class="footer">
Inhalt
</div>


Auszug aus dem der Content-CSS(nur wichtiges):


position:absolute;
min-height:200px;
height:auto;
width:800px;
margin-left:300px;
margin-top:400px;
margin-bottom:100px;
overflow:hidden;


Auszug aus dem der Footer-CSS(nur wichtiges):


width:800px;
height:auto;
margin-left:300px;


Der Footer ist natürlich im Moment ziemlich leer weil ich ehrlich gesagt habe kp wie es weitergeht.
Wäre dankbar für jede Hilfe. :>

mfG Tauli :|

ECNMY
20.09.2011, 19:47:33
Habe mich damit lange nichtmehr auseinandergesetzt, allerdings sollten dir die Werte z-index und margin-top im footer weiterhelfen.

BaShoR
20.09.2011, 20:28:22
Könntest du ein Bild machen wie du dir die Struktur vorstellst, und auch die Seite online stellen so wie du sie hast? Dann schaue ich mir das mal an. -> http://pastehtml.com/

ECNMY
13.11.2011, 14:51:02
Ich hab da mal ne Frage undzwar, will ich ein DIV erstellen, das solange keine Maus auf ihm ist, dunkel ist.
Wenn eine Maus sich dann drüber bewegt soll er hell werden.
Das Problem daran ist, dass dieses DIV nicht einfarbig ist, sondern ein Bild als Hintergrund hat.
Wie realisier ich das damit?

Nebukadnezar
13.11.2011, 21:06:32
Der beste weg wäre, einen zweiten DIV mittels position:absolute; darüber zu legen, den mit einer dunklen Farbe füllen und Transparenz zuweisen.

Dann brauchst du nicht zusätzlichen speicherplatz und ladezeit wenn du das bild nochmal auf deinem Webspace hast (in abgedunkelter Version), und zwischen denen switched.

Hab mal schnell das mit den 2 DIV's gebaut zusammengebaut:

http://asp1rat1on.as.funpic.de/web/darken.html

Die HTML und CSS-Dateien gibts hier:

http://asp1rat1on.as.funpic.de/web


regards,
Neb

Maulwurv
13.09.2012, 16:04:55
Nabend zusammen!

Ich würde mir gerne eine eigene Template-Engine schreiben. Die muss auch keine besonderen Kunststücke können, sondern nur den Inhalt der jeweiligen Seite in ein überall gleiches Template packen. Datenbanken brauche ich auch nicht, und es sind auch keine besonderen Sicherheitsfeatures notwendig, da der Benutzer nichts eintippen können muss.
Das brauche ich einerseits für mein eigenes Portfolio, andererseits aber auch für die neue Crushing Gods Hompage (muss bald mal raus). Das sollten ursprünglich neun Seiten werden. Die konnte man mit statischem HTML noch problemlos verwalten, sodass ich mir den Stress nicht machen musste. Naja, inzwischen sinds 52. :ugly:

Google spuckt leider auch nur Tutorials zu Smarty, Joomla und Co. aus oder zeigt mir welche, für die man bereits PHP können muss, oder bei denen ich aus anderen Gründen nicht durchblicke. Hier (http://tut.php-quake.net/de/template.html) z.B. kommt das Template-Engine-Tutorial an Stelle 36, noch nach "MySQL" und "Browsergame".

Nur habe ich keine Ahnung von PHP und gerade auch privat und beruflich nicht die Zeit, mich 100 Jahre lang durch sämtliche Tutorials zu wühlen, bis ich PHP-Nerd bin. Stattdessen möchte ich gerne auf die Sachen hinaus, die ich dafür wirklich brauche, ohne mich lange mit den Spielereien zu belasten, die zwar allgemein toll sind, mir aber jetzt gerade nicht helfen. Ich will nur einigermaßen verstehen, was ich da eigentlich tue, aber dabei den riesigen Gesamtkontext ausblenden.

Ist es wirklich so kompliziert, wie es rüberkommt?
Komme ich drumherum, alles zu lernen, oder kann ich das von vornherein knicken?
Wo muss ich ansetzen?

Danke für eure Zeit! ;)

Campeòn
13.09.2012, 16:29:09
Naja, was soll deine Template Engine denn alles können?

Wenn du einfach bei jeder Seite den gleichen Grundaufbau haben willst und sagen wir noch ein Menü dass dir auch zeigt wo du dich aktuell befindest, wirst du um php wohl nicht herum kommen. Aber das sind basics in php, das ist nicht schwer zu erlernen. Das sind im Grunde 3-4 Include Befehle und 20 Zeilen Code für das Menü. :D

wirehack7
13.09.2012, 16:44:44
Für eine Template Engine kannst du dir auch das anschauen: http://www.smarty.net/

Und hier ein paar Tuts:
http://www.inside-php.de/tutorial/PHP-Fortgeschrittene-11/eigenes-Template-System.html
http://www.webdesign-tutorial.net/programmierung/template-engines-und-objektorientierte-programmierung-oop/53

Maulwurv
13.09.2012, 16:49:21
Dass das die Basics sind, finde ich schonmal beruhigend. Dann muss ich mich nicht erst durch Datenbanken, Gästebücher und Browsergames wühlen. :D

- Ich brauche für jede Seite den gleichen Grundaufbau.
- Ein Menü, was zeigt, wo man sich befindet, brauche ich nur teilweise.
- Ich würde gerne Templates von komplizierten DIV-Konstruktionen usw. auch einfach per Befehl einfügen lassen und jeweils ein paar Variablen anpassen, damit ich sie global bequem verändern kann.
- Das ganze sollte möglichst wenig Speicher fressen, weil die Seite eh schon zu groß ist, und ne Diät braucht.

Das sind die Sachen, die mir spontan dazu einfallen.

EDIT @ wirehack: Eigentlich ist das Ziel, vorgefertigte Engines zu vermeiden. Und den zweiten Link kenne ich schon, aber verstehe nur Bahnhof, weil ich mich nicht auskenne. Da müsste ich erstmal alles auseinanderpflücken und dann wäre ich so weit wie vorher. Trotzdem vielen Dank! ;)

wirehack7
13.09.2012, 19:19:48
Dann Empfehle ich dir dass du bei Galileo Press dich mal nach PHP Büchern umschaust.
Die kann ich sehr empfehlen, hab da einige. Leider kann ich dir die Titel gerade nicht sagen da ich nicht zu hause bin. Schau am besten bei den Büchern ob auch OOP behandelt wird, denn das ist wichtig.