Jump to content
php.lv forumi

kods ar dažādiem id


ziedinjsh

Recommended Posts

Labsvakars.. uzdūros problēmai kurai man liekas nevajadzētu būt..

 

ajax kods kas atrodas header:

$ = function($name) { return document.getElementById($name); } 
function showContent() {
       $('loading').style.display = 'none';
       $('content').style.display = 'block';
}

funkciju failā:

function start($name){
echo "<div id='loading'><center><img src='misc/loader.gif'></center></div>";
echo "<div id='content'>";
}
function stop(){
echo "</div>";
}

 

index failā:


start('top');
echo "kkas";
stop();


start('page');
echo "kkas";
stop();

 

Vajadzētu taču strādāt tam ajax kodam.. jo nesanāk 2 vienādi id vienā lapā! Bet tagad sanāk vienā vietā divi un zemākais visu laiku rāda loading.gif bildi, bet aukšējais visu ielādē kā nākas!

Edited by ziedinjsh
Link to comment
Share on other sites

function stop(){
echo "</div>";
}

 

KĀPĒC!!!!??? kaut kas tāds ir vajadzīgs?

 

 

Ja tu gribi slēpt un rādīt vairākus elementus, tiem ir jāpiešķir klasi, nevis ID. Bet man izskatās, ka tur kaut kas galīgi greizi jau pašā idejā, kāpēc tas ir vajadzīgs un kā tas tiek panākts.

Edited by mad182
Link to comment
Share on other sites

nu kā header.php atrodas:

<script type="text/javascript">

$ = function($title) { return document.getElementById($title); } 
function showContent() {
       $('loading').style.display = 'none';
       $('content').style.display = 'block';
}
</script>

 

iekš misc/func.php

function opendiv($title){
echo "<div id='loading'><center><img src='misc/loader.gif'></center></div>";
echo "<div id='content'>";
}
function closediv(){
echo "</div>";
}

 

index.php ir includots gan header.php gan misc/func.php

tālāk ir šādi:

opendiv('top');
echo "Saturs ko ielādēt 1";
closediv();

opendiv('page');
echo "Saturs ko ielādēt 2";
closediv();

 

Tā tad, saturs 1 ielādējas, bet saturs 2 rāda tikai loader.gif un neielādējas.

Edited by ziedinjsh
Link to comment
Share on other sites

Ģeniāla ideja!

 

Re kur dažas lietas, ko pievieno...

 

function openSpan() {

echo '<span>';

}

function closeSpan() {

echo '</span>';

}

function openAnchor( $anchor ) {

echo "<a href=\"{$anchor}\">";

}

function closeAnchor() {

echo "</a>";

}

function openImage( $image, $alt ) {

echo "<img src=\"{$image}\" alt=\"{$alt}\"/>";

}

function closeImage() {
}

Link to comment
Share on other sites

Baigā jēga kopēt no kkurienes kodu, ko pats nesaproti! jQuery ir reizēs vieglāks par tīro JS, un dod iespēju realizēt visus iedomājamos efektus DOMā.

Ar AJAX šeit vispār neredzu sakaru. Nestrādā tavs kods, tapēc ka div'iem ids tev vienmēr ir vienāds. Vispār, lai novērst šādas kļūdas, der uzlikt vismaz FireBug.

Link to comment
Share on other sites

Papēti iegūto html kodu ko Tu iegūsti pārlūkā. Tev funkcija opendiv($title) vienmēr taisa div elementus ar vienādiem id, gan id="loading", gan id="content", Tu viņus izvadi divas reizes, Tev sanāks divi "loading" un divi "content". Nav saprotams kāpēc Tev vajadzīgs $title, jo viņš funkcijā netiek izmantots.

 

Par jquery nezinu, tas daudz ko atvieglo, bet es personīgi neizmantoju viņu kad vajag sataisīt minimālas javascript lietas. Piemēram, uzskatu ka nav jēgas ielādēt visu jquery, lai vienam divam uz pogas nospiešanas mainītu display.

Edited by Maris-S
Link to comment
Share on other sites

Man liekas, ka tas, ka eksistē PHP funkcija, kas izvada HTML jau ir diezgan liela problēma...

 

Varam sataisīt visu pa Manam veidam... kāds ir vēlamais efekts, ko vēlies panākt (bez nekādas iedziļināšanās programmēšanā)?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...