diff --git a/index.html b/index.html new file mode 100644 index 0000000..2dad1ed --- /dev/null +++ b/index.html @@ -0,0 +1,68 @@ + + + + + + Welcome To RC News Center + + + + + +
+

+ Breaking News By RC News Center +

+
+ +
+
+ +
+ + + + diff --git a/index.js b/index.js new file mode 100644 index 0000000..f0cd6e1 --- /dev/null +++ b/index.js @@ -0,0 +1,71 @@ +console.log("Welcome to News Website Project"); +// a91bbd17191f48d8ac63d59c12f72ea9 + +let apiKey = "a91bbd17191f48d8ac63d59c12f72ea9"; + +// Grab the News container +let newsAccordian = document.getElementById("newsAccordian"); + +// Create a GET request +const xhr = new XMLHttpRequest(); +xhr.open( + "GET", + `https://newsapi.org/v2/top-headlines?country=in&apiKey=${apiKey}`, + true +); + +// What to do when response is ready +xhr.onload = function () { + if (this.status === 200) { + let json = JSON.parse(this.responseText); + let articles = json.articles; + // console.log(articles); + let newsHtml = ""; + articles.forEach(function(element, index) { + // console.log(element,index); + let news = `
+ +
+ +
+
`; + newsHtml += news; + }); + newsAccordian.innerHTML = newsHtml; + } else { + console.log(`Sorry`); + } +}; + +xhr.send(); + +// Search News + +let search = document.getElementById('searchTxt'); +search.addEventListener("input", function(){ + + inputVal = search.value.toLowerCase(); + console.log('Input event fired!', inputVal); + let newsAccordians = document.getElementsByClassName('accordion') + Array.from(newsAccordians).forEach(function (element){ + let newsTxt = element.getElementsByTagName("p")[0].innerText; + if(newsTxt.includes(inputVal)){ + element.style.display = "block"; + } + else{ + element.style.display = "none"; + } + console.log(newsTxt); + }) + +}) +